mirror of
https://github.com/stablyai/orca.git
synced 2026-09-28 16:02:45 +00:00
A test switched off still reads as a green suite, so it is the cheapest way to make a known-broken expectation stop complaining -- the same outcome as rewriting the assertion, with a smaller diff. The gate now treats it as the fourth flip shape: an added .skip/.fixme/describe.skip call whose title had an enabled predecessor removed in the same hunk. Unskipping is not flagged, and neither is a brand-new skipped test, because neither stops enforcing an expectation that existed before. .only is not a disable: it narrows a run, it does not stop asserting. The title extractor now also reads bare describe() and carries the call's modifiers, which is what distinguishes a disable from a rename. A skip that keeps its title reports once, as a disable, not twice. Splitting the four heuristics into test-expectation-flip-heuristics.mjs keeps the CLI at 134 lines and the heuristics at 195, both under the 300 budget, and puts the diff-shape rules in a file named after what they are. Replaying the gate over the last 80 first-parent main commits touching the gated paths still flags 11 -- the fourth heuristic adds no noise on real history, and neither does reading bare describe().