Lint the commits being pushed and scope overlay failures per sensor
The pre-push gate linted only the dirty tree, so the commits about to be pushed went unchecked; and every failed overlay projection was sticky, which cost a finger result its overlay over one bad frame while box results were retried nowhere. gate.ps1 now takes -LintBase (default origin/main, exit 2 on an unknown ref), the projector declares whether its own failures are permanent, and serve_stored_view decides before it sets the view. Verified with gate.ps1 (PASS: 569 studio + 485 shared tests, 632 ui_check checks) and the two round-2 red samples kept in scratch.
This commit is contained in:
@@ -125,6 +125,11 @@ shared suite, and `ui_check.py`; writes each one's output to
|
||||
`tools/skip_budget.txt`, and zero findings anywhere. It exits 0 only when all of
|
||||
that holds.
|
||||
|
||||
The lint step compares against a commit range, not only the dirty tree: `-LintBase <ref>`
|
||||
defaults to `origin/main`, so a pre-push run checks every commit about to be pushed.
|
||||
A ref that does not resolve is a configuration error (exit 2); the gate never quietly
|
||||
falls back to linting uncommitted files only.
|
||||
|
||||
The **gate platform is Windows**: the suites render real Qt widgets offscreen, and two
|
||||
checks are platform-sensitive ([`docs/test-repair-plan.zh.md`](docs/test-repair-plan.zh.md)
|
||||
§3 #11 and #13), so a green Linux run is not the same statement.
|
||||
|
||||
Reference in New Issue
Block a user