Skip to content

Commit a106ea0

Browse files
kim-emclaude
andauthored
test: split grind_lint.lean into 7 smaller files for faster CI (#11271)
This PR splits the single grind_lint.lean test (50+ seconds) into 7 separate files that each run in under 7 seconds: - grind_lint_list.lean (5.7s): List namespace with exceptions - grind_lint_array.lean (4.6s): Array namespace - grind_lint_bitvec.lean (3.9s): BitVec namespace with exceptions - grind_lint_std_hashmap.lean (6.8s): Std hash map/set namespaces - grind_lint_std_treemap.lean (~6s): Std tree map/set namespaces - grind_lint_std_misc.lean (~5s): Std.Do, Std.Range, Std.Tactic - grind_lint_misc.lean (5.5s): All other non-Lean namespaces Each file maintains complete namespace coverage and preserves all existing exceptions. The split enables better CI parallelization and faster feedback. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-authored-by: Claude <[email protected]>
1 parent 0060080 commit a106ea0

File tree

7 files changed

+85
-0
lines changed

7 files changed

+85
-0
lines changed
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
import Std
2+
import Lean.Elab.Tactic.Grind.Lint
3+
4+
/-! Check Array namespace: -/
5+
6+
#guard_msgs in
7+
#grind_lint check (min := 20) in Array
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
import Std
2+
import Lean.Elab.Tactic.Grind.Lint
3+
4+
/-! `BitVec` exceptions -/
5+
6+
-- `BitVec.msb_replicate` is reasonable at 25.
7+
#guard_msgs in
8+
#grind_lint inspect (min := 30) BitVec.msb_replicate
9+
10+
-- `BitVec.msb_signExtend` is reasonable at 22.
11+
#guard_msgs in
12+
#grind_lint inspect (min := 25) BitVec.msb_signExtend
13+
14+
/-! Check BitVec namespace: -/
15+
16+
#guard_msgs in
17+
#grind_lint check (min := 20) in BitVec
Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
import Std
2+
import Lean.Elab.Tactic.Grind.Lint
3+
4+
/-! `List` exceptions -/
5+
6+
-- TODO: Not sure what to do here, see https://lean-fro.zulipchat.com/#narrow/channel/503415-grind/topic/.60.23grind_lint.60.20command/near/556730710
7+
-- #grind_lint inspect List.getLast?_concat
8+
#grind_lint skip List.getLast?_concat
9+
10+
-- TODO: We should consider changing the grind annotation for `List.getElem?_eq_none`
11+
-- so it only fires if we've already proved the hypothesis holds. (i.e. the new gadget)
12+
-- Other than that, everything looks sane here:
13+
-- #grind_lint inspect List.getLast?_pmap
14+
#grind_lint skip List.getLast?_pmap
15+
16+
-- TODO: `List.Sublist.eq_of_length` should probably only fire when we've already proved the hypotheses.
17+
18+
-- `List.replicate_sublist_iff` is reasonable at 30.
19+
#guard_msgs in
20+
#grind_lint inspect (min := 30) List.replicate_sublist_iff
21+
22+
-- `List.Sublist.append` is reasonable at 25.
23+
#guard_msgs in
24+
#grind_lint inspect (min := 25) List.Sublist.append
25+
26+
-- `List.Sublist.middle` is reasonable at 25.
27+
#guard_msgs in
28+
#grind_lint inspect (min := 25) List.Sublist.middle
29+
30+
/-! Check List namespace: -/
31+
32+
#guard_msgs in
33+
#grind_lint check (min := 20) in List
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
import Std
2+
import Lean.Elab.Tactic.Grind.Lint
3+
4+
/-! Check miscellaneous namespaces: -/
5+
6+
#guard_msgs in
7+
#grind_lint check (min := 20) in Acc Attr Bool Clause Const Decidable DefaultClause DHashMap Equiv ExceptT ExtDHashMap Fin Int Internal InvImage Lex LRAT Nat NormalizePattern OldCollector Option OptionT Perm Prod PSigma Quot Quotient Rat Raw ReaderT ReflCmp Setoid StateT Subrelation Subtype Sum Tactic Task Vector WellFounded
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
import Std
2+
import Lean.Elab.Tactic.Grind.Lint
3+
4+
/-! Check Std hash/tree map/set namespaces: -/
5+
6+
#guard_msgs in
7+
#grind_lint check (min := 20) in Std.DHashMap Std.HashMap Std.HashSet Std.ExtDHashMap Std.ExtHashMap Std.ExtHashSet
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
import Std
2+
import Lean.Elab.Tactic.Grind.Lint
3+
4+
/-! Check remaining Std sub-namespaces: -/
5+
6+
#guard_msgs in
7+
#grind_lint check (min := 20) in Std.Do Std.Range Std.Tactic
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
import Std
2+
import Lean.Elab.Tactic.Grind.Lint
3+
4+
/-! Check Std tree map/set namespaces: -/
5+
6+
#guard_msgs in
7+
#grind_lint check (min := 20) in Std.DTreeMap Std.TreeMap Std.TreeSet Std.ExtDTreeMap Std.ExtTreeMap Std.ExtTreeSet

0 commit comments

Comments
 (0)