Repository navigation
Run Built-in Ticket processes as Experiment Trials - #1919
Merged
Merged
Conversation
This was referenced Nov 10, 2026
Merged
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Process Eval tasks now run the Built-in Ticket run through the Experiment, retaining every Step and session without publishing factory work.
Process grading is outcome-only for this Ticket. Existing Code review and Spec review grading remains intact. Reference fixes stay outside implementing Trials; repository integrity applies to review Trials.
Closes #1874
Evidence
Execution evidence
Before:
cargo test --test experiments process::built_in_ticket_trials_deliver_and_keep_all_steps_and_sessions -- --exactfailed withleft: String("failed"), right: "delivered"when repository preparation exposed the reference fix.After: the same test passes, including committed edits, both Arms' Steps, four sessions, Step ancestry in the exported Trace, outcome counts and factory-list isolation.
Before:
python3 .thirdshift-review-u6pc7l/run-spec-regression.py process::spec_process_outcome_counts_exclude_failed_review_trialsfailed:failed review Trial contaminated Process Trial outcomes,left: Number(1), right: 0.After: the retained regression passes; process counts exclude failed review Trials.
Before:
python3 .thirdshift-review-u6pc7l/run-spec-regression.py process::spec_a_markdown_final_question_is_stopped_to_askfailed:left: String("delivered"), right: "stopped_to_ask".After: the retained regression passes and the Score is failed.
Before:
PLAYWRIGHT_BROWSERS_PATH=/tmp/thirdshift-1874-browser-compatible node --test --test-name-pattern='process Trial Peeks' console/tests/experiments.test.cjstimed out looking for the delivered Trial'sBaseline Trial 1: Passedbutton.After: the focused browser regression passes, showing process Steps, outcomes and delivered Scores.
Before:
cargo test --bin thirdshift evals::experiment::execution::tests::a_delivered_review_that_changes_the_repository_is_voided -- --exactfailed witha delivered review Trial kept a mutated repository.After: the same test voids that review Trial as
repository_changedand scores it as a fail. Process Trials that change the repository still deliver.Test seams: the Experiment CLI and retained evidence/export commands; the direct Trial protocol; the Console's Experiment page and Trial Peek.
Validation:
cargo clippy --all-targets -- -D warningspasses.scripts/affected-tests issue-1484passes the 67 site tests and locked build, then stops at the Console suite: 165 passed, 4 failed in unchanged Fleet/Inbox flows (sign-in connection refusal and an Undo timeout with two resulting count assertions). All four pass when rerun directly:PLAYWRIGHT_BROWSERS_PATH=/tmp/thirdshift-1874-browser-compatible node --test --test-concurrency=1 --test-name-pattern='Fleet starts, Passes and config|inline Dismiss leaves|every section folder fits|tab title keeps' console/tests/fleet-control.test.cjs console/tests/inbox.test.cjs(4 passed, 19.77s). The new process UI test passes. Browser validation uses installed Chromium 1247 through private compatibility paths; browser files are serialized and Rust uses three test workers./usr/bin/time -p env RUST_TEST_THREADS=3 cargo testran for 485.07s including compilation: unit tests and the first integration targets passed, then an unchanged Bug origins test requiredtomllib, absent from the host's Python 3.9. Retrying that target and subsequent integration targets with installed Python 3.11 passed Bug origins and reached Console: 263 passed, 1 failed, 1 ignored. The remaining failure iscargo test --test console idle::unchanged_requests_reuse_retained_records_but_replacements_are_visible -- --exact --nocapture:unchanged request reread 107775 bytes. Running that exact test binary against a fresh build of PR base2b1dbd0eproduces the identical 107775-byte failure (exit 101), confirming it predates this PR. The temporary baseline checkout was removed and the published binary restored. Local broad Rust validation is therefore incomplete; CI runs the complete suite oneb823688. Its site and Console jobs have passed; its Rusttestjob is still running at this update.Visual evidence
Experiment Trial Peek, desktop 1440×900, same synthetic fixture and selected Trial:
Experiment Trial Peek, mobile 390×844, same fixture and selected Trial:
Review
Fixed point:
issue-1484(9283d0b8), including its inherited #1873 prefactor. Standards raised 1 heuristic finding; Spec raised 2 behaviour findings. All three were accepted and fixed; both behaviour reproducers failed as predicted before their fixes. Security review found 1 introduced finding and fixed it; the regression isa_delivered_review_that_changes_the_repository_is_voided. Full reports and final files-read lists are retained in.thirdshift-review-u6pc7l/standards.mdandspec.md, withsummary.jsonrecording{"standards":1,"spec":2}.Both axes read all 41 changed paths, including generated
site/docs/index.html; no generated output was excluded. Their final independent pass coveredc6f9e943. Later tooling-only hunks insrc/evals/experiment/store.rs(text formatting) andsrc/processes/source.rs(exhaustive Step matching) were checked by the implementing agent and validation, and were not reread by either independent reviewer. These are the two paths with final hunks outside the independent review.Unaddressed findings
prepare_local_process.Security review outcome
No unaddressed introduced findings.
Merge Danger
Door: two-way
Existing task manifests and review Experiment identities remain compatible. New process outcomes require a build that understands process Trials.
Blast Radius: Experiments
Also exercises the shared local Ticket source; existing factory Process and Ticket-run tests cover its production adapter.
Built with codex codex-cli 0.166.0 · gpt-6.1-sol · xhigh