Repository navigation
chore(tiers): release kit — discovered test suite, bench validation kit, review before validation - #237
Merged
Conversation
…it, review-before-validate - `pixi run test` = scripts/run-tests.py: runs every tests/test-*.js|py and tests/validate-*.js by name (each in its own process, the vendored yaml hook for every Node test, a summary, non-zero on any failure; `-- <substring>` runs a subset, `-- --list` shows the set). Replaces the hand-kept `&&` chain that every test-adding PR edited on the same line, so every candidate conflicted in pixi.toml. It also picks up 8 files that were running nowhere (test-crc.js, validate-arena-geometry/-header-v2/-matlab-reference, and the four validate-* suites only their own workflows ran); all pass. 56 files, ~15 s. - Bench kit: protocols/validation/bench_closed_loop_2x10.yaml (the #225/rc closed-loop check) + scripts/bench-check.py / `pixi run bench-check` (completed, all arena commands ok, no error glyphs, --hold COND=FRAME, --channel, --build; reads behavior_v1/v2, .jsonl[.gz]). Verified on the 2026-09-28/29 bench logs; tests/test-bench-check.py (synthetic logs). - release-process.md + g6-release skill: adversarial review of the candidate diff BEFORE bench time (lesson from 2026-09-29 rc1/rc2), the bench kit steps, course-repo auto-commit off for validation runs, keep PRs mergeable (no CI on conflicting PRs), tests are discovered by name. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
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
Lessons from the first two releases, turned into tooling and docs:
pixi run testdiscovers tests by name (scripts/run-tests.py): everytests/test-*.js|pyandtests/validate-*.js. It replaces the hand-kept&&chain inpixi.toml. Every PR that added a test appended to that same line, so every release candidate hit the same merge conflict (candidate 2 hit it three times). Details:yamlhook, passed as a file URL so it also works on Windows.pixi run test -- wireruns a subset, and-- --listshows what would run.test-crc.js,validate-arena-geometry.js,validate-header-v2.js,validate-matlab-reference.js, and the fourvalidate-*suites only their own workflows ran. All pass. Total: 56 files, about 15 s.protocols/validation/bench_closed_loop_2x10.yaml, the closed-loop check used for feat(closed loop): a trial opens at its trialParams frame_index — Studio v0.91 #225 and both 2026-09-2x candidates. It needs the CSHL course pattern bundle on the SD card.pixi run bench-check -- LOG --hold epoch_a_frame25=25 --hold epoch_b_frame75=75 --channel next --build <sha>. It checks that the run completed, every arena command was ok, there were no error glyphs, and the closed loop held its frames. It prints Studio version, tier, build, controller firmware and panel inventory..gz. I verified it on the real 2026-09-28/29 bench logs (all pass), and it has its own tests with synthetic logs.g6-releaseskill:Linear: LAB-222 (two-tier web releases)
Tier
Tooling and docs only, merged after CI like #232. No served page changes: a new YAML file under
protocols/validation/is served but not listed inprotocols/index.json.Release notes
None (no tool changes).
Test plan
pixi run test: 56/56 files pass (the old 46 + 8 previously unrun + 2 new)tests/test-run-tests.py12/12,tests/test-bench-check.py20/20pixi run bench-checkon the rc3, Production v0.92 and v0.91-baseline logs: all pass, including the behavior_v1 log🤖 Generated with Claude Code