@outfitter/tooling 0.2.1 → 0.2.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.markdownlint-cli2.jsonc +55 -55
- package/README.md +7 -3
- package/biome.json +79 -72
- package/dist/cli/check.js +1 -1
- package/dist/cli/fix.js +1 -1
- package/dist/cli/index.js +527 -18
- package/dist/cli/init.js +1 -1
- package/dist/cli/pre-push.d.ts +34 -1
- package/dist/cli/pre-push.js +14 -2
- package/dist/cli/upgrade-bun.js +1 -1
- package/dist/index.d.ts +108 -2
- package/dist/index.js +21 -9
- package/dist/registry/build.d.ts +6 -0
- package/dist/registry/build.js +31 -13
- package/dist/shared/@outfitter/{tooling-xx1146e3.js → tooling-0x5q15ec.js} +2 -1
- package/dist/shared/@outfitter/tooling-8sd32ts6.js +277 -0
- package/dist/shared/@outfitter/{tooling-s4eqq91d.js → tooling-9errkcvk.js} +2 -1
- package/dist/shared/@outfitter/{tooling-75j500dv.js → tooling-9yzd08v1.js} +10 -6
- package/dist/shared/@outfitter/{tooling-xaxdr9da.js → tooling-mxwc1n8w.js} +13 -3
- package/lefthook.yml +5 -7
- package/package.json +121 -121
- package/registry/registry.json +78 -76
- package/tsconfig.preset.bun.json +5 -5
- package/tsconfig.preset.json +33 -33
- package/dist/shared/@outfitter/tooling-qm7jeg0d.js +0 -99
package/.markdownlint-cli2.jsonc
CHANGED
|
@@ -1,66 +1,66 @@
|
|
|
1
1
|
{
|
|
2
|
-
|
|
3
|
-
|
|
2
|
+
// Outfitter markdownlint preset
|
|
3
|
+
// https://github.com/DavidAnson/markdownlint
|
|
4
4
|
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
5
|
+
"config": {
|
|
6
|
+
// Headings
|
|
7
|
+
"MD003": { "style": "atx" }, // ATX-style headings (# Heading)
|
|
8
|
+
"MD022": { "lines_above": 1, "lines_below": 1 }, // Blank lines around headings
|
|
9
|
+
"MD024": { "siblings_only": true }, // Allow duplicate headings in different sections
|
|
10
|
+
"MD041": false, // First line doesn't need to be h1 (frontmatter, etc.)
|
|
11
11
|
|
|
12
|
-
|
|
13
|
-
|
|
12
|
+
// Line length - disabled for prose flexibility
|
|
13
|
+
"MD013": false,
|
|
14
14
|
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
15
|
+
// Lists
|
|
16
|
+
"MD004": { "style": "dash" }, // Unordered list style: dash (-)
|
|
17
|
+
"MD007": { "indent": 2 }, // List indentation: 2 spaces
|
|
18
|
+
"MD032": true, // Blank lines around lists
|
|
19
19
|
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
20
|
+
// Code blocks
|
|
21
|
+
"MD040": true, // Fenced code blocks should have a language
|
|
22
|
+
"MD046": { "style": "fenced" }, // Code block style: fenced (```)
|
|
23
|
+
"MD048": { "style": "backtick" }, // Code fence style: backticks
|
|
24
24
|
|
|
25
|
-
|
|
26
|
-
|
|
25
|
+
// Links
|
|
26
|
+
"MD034": true, // No bare URLs (use <url> or [text](url))
|
|
27
27
|
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
28
|
+
// Whitespace
|
|
29
|
+
"MD009": { "br_spaces": 2 }, // Allow 2 trailing spaces for <br>
|
|
30
|
+
"MD010": { "spaces_per_tab": 2 }, // Tabs to spaces
|
|
31
|
+
"MD012": { "maximum": 1 }, // Max 1 consecutive blank line
|
|
32
|
+
"MD047": true, // Files should end with newline
|
|
33
33
|
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
34
|
+
// HTML - allow for GitHub-specific elements
|
|
35
|
+
"MD033": {
|
|
36
|
+
"allowed_elements": [
|
|
37
|
+
"details",
|
|
38
|
+
"summary",
|
|
39
|
+
"kbd",
|
|
40
|
+
"br",
|
|
41
|
+
"sup",
|
|
42
|
+
"sub",
|
|
43
|
+
"img",
|
|
44
|
+
"picture",
|
|
45
|
+
"source",
|
|
46
|
+
"a"
|
|
47
|
+
]
|
|
48
|
+
},
|
|
49
49
|
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
50
|
+
// Emphasis
|
|
51
|
+
"MD049": { "style": "asterisk" }, // Emphasis style: *italic*
|
|
52
|
+
"MD050": { "style": "asterisk" } // Strong style: **bold**
|
|
53
|
+
},
|
|
54
54
|
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
55
|
+
// Ignore patterns
|
|
56
|
+
"ignores": [
|
|
57
|
+
"node_modules/**",
|
|
58
|
+
"**/node_modules/**",
|
|
59
|
+
"dist/**",
|
|
60
|
+
"**/dist/**",
|
|
61
|
+
".turbo/**",
|
|
62
|
+
"**/.turbo/**",
|
|
63
|
+
"CHANGELOG.md",
|
|
64
|
+
"**/CHANGELOG.md"
|
|
65
|
+
]
|
|
66
66
|
}
|
package/README.md
CHANGED
|
@@ -68,18 +68,22 @@ bunx @outfitter/tooling upgrade-bun 1.4.0 --no-install
|
|
|
68
68
|
|
|
69
69
|
### `tooling pre-push`
|
|
70
70
|
|
|
71
|
-
TDD-aware pre-push
|
|
71
|
+
TDD-aware pre-push strict verification hook. Detects RED phase branches and skips verification by design.
|
|
72
72
|
|
|
73
73
|
RED phase branches follow these patterns:
|
|
74
74
|
- `*-tests` (e.g., `feature/auth-tests`)
|
|
75
75
|
- `*/tests` (e.g., `feature/auth/tests`)
|
|
76
76
|
- `*_tests` (e.g., `feature/auth_tests`)
|
|
77
77
|
|
|
78
|
+
Verification order:
|
|
79
|
+
1. Run `verify:ci` if present.
|
|
80
|
+
2. Otherwise run strict fallback: `typecheck`, `check|lint`, `build`, `test`.
|
|
81
|
+
|
|
78
82
|
```bash
|
|
79
83
|
# Normal usage (in lefthook.yml)
|
|
80
84
|
bunx @outfitter/tooling pre-push
|
|
81
85
|
|
|
82
|
-
# Force skip
|
|
86
|
+
# Force skip verification
|
|
83
87
|
bunx @outfitter/tooling pre-push --force
|
|
84
88
|
```
|
|
85
89
|
|
|
@@ -124,7 +128,7 @@ extends:
|
|
|
124
128
|
|
|
125
129
|
Default hooks:
|
|
126
130
|
- **pre-commit**: Runs ultracite on staged files, typechecks
|
|
127
|
-
- **pre-push**: Runs
|
|
131
|
+
- **pre-push**: Runs TDD-aware strict verification via `tooling pre-push`
|
|
128
132
|
|
|
129
133
|
### markdownlint
|
|
130
134
|
|
package/biome.json
CHANGED
|
@@ -1,74 +1,81 @@
|
|
|
1
1
|
{
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
2
|
+
"$schema": "https://biomejs.dev/schemas/2.3.12/schema.json",
|
|
3
|
+
"root": false,
|
|
4
|
+
"javascript": {
|
|
5
|
+
"globals": ["Bun"]
|
|
6
|
+
},
|
|
7
|
+
"linter": {
|
|
8
|
+
"rules": {
|
|
9
|
+
"complexity": {
|
|
10
|
+
"useLiteralKeys": "off",
|
|
11
|
+
"noVoid": "off",
|
|
12
|
+
"noExcessiveCognitiveComplexity": "off"
|
|
13
|
+
},
|
|
14
|
+
"performance": {
|
|
15
|
+
"useTopLevelRegex": "off"
|
|
16
|
+
},
|
|
17
|
+
"style": {
|
|
18
|
+
"useBlockStatements": "off"
|
|
19
|
+
},
|
|
20
|
+
"suspicious": {
|
|
21
|
+
"noConsole": "error"
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
},
|
|
25
|
+
"vcs": {
|
|
26
|
+
"enabled": true,
|
|
27
|
+
"clientKind": "git",
|
|
28
|
+
"useIgnoreFile": true
|
|
29
|
+
},
|
|
30
|
+
"files": {
|
|
31
|
+
"ignoreUnknown": true,
|
|
32
|
+
"includes": [
|
|
33
|
+
"**",
|
|
34
|
+
"!**/node_modules",
|
|
35
|
+
"!**/dist",
|
|
36
|
+
"!**/.turbo",
|
|
37
|
+
"!**/*.gen.ts",
|
|
38
|
+
"!registry/registry.json"
|
|
39
|
+
]
|
|
40
|
+
},
|
|
41
|
+
"overrides": [
|
|
42
|
+
{
|
|
43
|
+
"includes": [
|
|
44
|
+
"packages/*/src/index.ts",
|
|
45
|
+
"apps/*/src/index.ts",
|
|
46
|
+
"**/index.ts"
|
|
47
|
+
],
|
|
48
|
+
"linter": {
|
|
49
|
+
"rules": {
|
|
50
|
+
"performance": {
|
|
51
|
+
"noBarrelFile": "off"
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
},
|
|
56
|
+
{
|
|
57
|
+
"includes": ["**/*.test.ts", "**/__tests__/**/*"],
|
|
58
|
+
"linter": {
|
|
59
|
+
"rules": {
|
|
60
|
+
"suspicious": {
|
|
61
|
+
"useAwait": "off",
|
|
62
|
+
"noConsole": "off"
|
|
63
|
+
},
|
|
64
|
+
"performance": {
|
|
65
|
+
"noDelete": "off"
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
},
|
|
70
|
+
{
|
|
71
|
+
"includes": ["apps/**/*.ts", "scripts/**/*.ts", "**/scripts/**/*.ts"],
|
|
72
|
+
"linter": {
|
|
73
|
+
"rules": {
|
|
74
|
+
"suspicious": {
|
|
75
|
+
"noConsole": "off"
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
]
|
|
74
81
|
}
|
package/dist/cli/check.js
CHANGED