You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: .agents/skills/usethis-qa-import-linter/SKILL.md
+7-2Lines changed: 7 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -4,7 +4,7 @@ description: Use the Import Linter software on the usethis project
4
4
compatibility: usethis, Python, import-linter
5
5
license: MIT
6
6
metadata:
7
-
version: "1.0"
7
+
version: "1.1"
8
8
---
9
9
10
10
# Import Linter
@@ -54,9 +54,14 @@ layers =
54
54
exhaustive = true
55
55
```
56
56
57
+
## Contract Strategy
58
+
59
+
Not every module needs an associated contract for its submodules. Having contracts for every level of the module structure can lead to unnecessary maintenance overhead. Generally, it is rare to create new contracts.
60
+
57
61
## Procedure
58
62
59
63
1. Ensure the module structure complies with the Import Linter configuration.
60
64
2. Explicitly add/rename new/modified modules to their parent-level contract (to adhere to the `exhaustive` setting).
61
65
3. For major refactorings, rationalize the module structure and update the Import Linter configuration accordingly.
62
-
4. Run Import Linter to verify that all contracts are satisfied.
66
+
4. Avoid creating new contracts unless explicitly instructed.
67
+
5. Run Import Linter to verify that all contracts are satisfied.
0 commit comments