Skip to content

Commit 069915c

Browse files
DaveSkenderCopilot
andauthored
chore: Maintenance updates (#143)
Signed-off-by: Dave Skender <8432125+DaveSkender@users.noreply.github.com> Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
1 parent 8c853f6 commit 069915c

56 files changed

Lines changed: 7571 additions & 10739 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/instructions/code-completion.instructions.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ description: "Repo-specific code completion checklist extensions for uswds-desig
77

88
## Commands
99

10-
- Package manager: npm (Node >= 22.17)
10+
- Package manager: npm (Node >= 24)
1111
- Install: npm install (use npm ci in CI)
1212
- Lint: npm run lint
1313
- Lint (fix): npm run lint:fix
@@ -22,7 +22,7 @@ description: "Repo-specific code completion checklist extensions for uswds-desig
2222
## Policies
2323

2424
- Zero-warning policy: lint must pass without errors; warnings allowed but should be addressed before merge.
25-
- Coverage thresholds (from jest.config.ts): branches 60%, functions 70%, lines 85%, statements 85%
25+
- Coverage thresholds (from vitest.config.ts): branches 60%, functions 70%, lines 85%, statements 85%
2626
- PR titles: Conventional but not enforced; prefer feat:, fix:, chore:, docs:, test:, refactor:
2727
- Required CI checks: build, lint, unit tests, and e2e must pass locally before PR.
2828

@@ -55,5 +55,5 @@ npm run e2e
5555
## Documentation updates
5656

5757
- Update README.md if commands, minimum Node version, or scripts change.
58-
- Cross-reference: package.json scripts, angular.json configurations, jest.config.ts, playwright.config.ts.
58+
- Cross-reference: package.json scripts, angular.json configurations, vitest.config.ts, playwright.config.ts.
5959
- Exclusions: none.

.github/workflows/deploy-website.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ jobs:
2525
- name: Setup Node
2626
uses: actions/setup-node@v4
2727
with:
28-
node-version: "22"
28+
node-version: "24"
2929
cache: "npm"
3030
cache-dependency-path: package-lock.json
3131

.github/workflows/test-website.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ jobs:
1818
- name: Setup Node
1919
uses: actions/setup-node@v4
2020
with:
21-
node-version: "22"
21+
node-version: "24"
2222
cache: "npm"
2323
cache-dependency-path: package-lock.json
2424

.markdownlint-cli2.jsonc

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
{
2+
"globs": ["**/*.md"],
3+
"gitignore": true,
4+
"ignores": [
5+
"**/node_modules/**",
6+
"dist/**",
7+
"out/**",
8+
"coverage/**",
9+
".angular/**",
10+
".build/**",
11+
".tmp/**"
12+
],
13+
"config": {
14+
"default": true,
15+
"MD003": { "style": "atx" },
16+
"MD004": { "style": "dash" },
17+
"MD007": { "indent": 2 },
18+
"MD013": false, // allow long lines
19+
"MD024": { "siblings_only": true },
20+
"MD033": true,
21+
"MD041": false,
22+
"MD046": { "style": "fenced" },
23+
"MD048": { "style": "backtick" },
24+
"MD060": false
25+
}
26+
}

.markdownlint.json

Lines changed: 0 additions & 39 deletions
This file was deleted.

.markdownlintignore

Lines changed: 0 additions & 7 deletions
This file was deleted.

.prettierignore

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,5 @@ node_modules/
88
**/*.md
99
**/*.markdown
1010

11-
# Keep VS Code workspace JSON/JSONC readable (multiline arrays)
1211
.vscode/*.json
1312
.vscode/*.jsonc

.prettierrc renamed to .prettierrc.json

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,10 @@
55
"useTabs": false,
66
"semi": true,
77
"singleQuote": false,
8-
"trailingComma": "es5",
8+
"trailingComma": "none",
99
"bracketSpacing": true,
1010
"arrowParens": "always",
11-
"endOfLine": "lf"
11+
"endOfLine": "lf",
12+
"proseWrap": "preserve",
13+
"embeddedLanguageFormatting": "off"
1214
}

.vscode/mcp.json

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
{
2+
"servers": {
3+
"angular-cli": {
4+
"type": "stdio",
5+
"command": "npx",
6+
"args": [
7+
"-y",
8+
"@angular/cli@latest",
9+
"mcp"
10+
]
11+
}
12+
}
13+
}

.vscode/tasks.json

Lines changed: 157 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,164 @@
11
{
2-
// For more information, visit: https://go.microsoft.com/fwlink/?LinkId=733558
2+
// See https://go.microsoft.com/fwlink/?LinkId=733558
3+
// for the documentation about the tasks.json format.
4+
// Schema: https://code.visualstudio.com/docs/reference/tasks-appendix
5+
"$schema": "vscode://schemas/tasks",
36
"version": "2.0.0",
7+
"presentation": {
8+
"clear": true,
9+
"panel": "dedicated",
10+
"showReuseMessage": false
11+
},
12+
"problemMatcher": [],
13+
"options": {
14+
"cwd": "${workspaceFolder}"
15+
},
416
"tasks": [
17+
// ===================================
18+
// Install and update dependencies
19+
// ===================================
520
{
6-
// Local dev server (ng serve)
7-
"label": "local start",
21+
"label": "Install: Node packages",
22+
"detail": "Install npm workspace dependencies (npm packages)",
23+
"type": "shell",
24+
"command": "npm install"
25+
},
26+
{
27+
"label": "Clean: Node packages",
28+
"detail": "Delete node_modules and lock files",
29+
"type": "npm",
30+
"script": "clean"
31+
},
32+
{
33+
"label": "Check: Angular packages",
34+
"detail": "Check for dependency updates using Angular CLI for the client website.",
35+
"type": "shell",
36+
"command": "npx ng update"
37+
},
38+
{
39+
"label": "Update: Angular packages",
40+
"detail": "Update dependencies using Angular CLI for the client website.",
41+
"type": "shell",
42+
"command": "npx ng update @angular/cli @angular/core angular-eslint --allow-dirty"
43+
},
44+
{
45+
"label": "Check: Node packages",
46+
"detail": "Check for dependency updates in root and all workspace packages",
47+
"type": "shell",
48+
"command": "npx npm-check-updates --deep --peer"
49+
},
50+
{
51+
"label": "Update: Node packages",
52+
"detail": "Update dependencies in root and all workspace packages to latest versions",
53+
"type": "shell",
54+
"command": "npx npm-check-updates --deep --peer --upgrade && npm install",
55+
"dependsOn": "Update: Angular packages",
56+
"dependsOrder": "sequence"
57+
},
58+
// ===================================
59+
// Lint and format
60+
// ===================================
61+
{
62+
"label": "Test",
63+
"detail": "Run vitest test suite",
64+
"type": "npm",
65+
"script": "test",
66+
"group": {
67+
"kind": "test",
68+
"isDefault": true
69+
}
70+
},
71+
{
72+
"label": "Lint: All (verify)",
73+
"detail": "Run all linters, checks, and tests across the workspace (prettier + markdown + TypeScript + typecheck + tests)",
74+
"group": {
75+
"kind": "build",
76+
"isDefault": true
77+
},
78+
"dependsOn": [
79+
"Lint: Markdown (verify)",
80+
"Lint: Prettier (verify)",
81+
"Lint: TypeScript (verify)",
82+
"Lint: Typecheck (verify)",
83+
"Test"
84+
],
85+
"dependsOrder": "parallel",
86+
"problemMatcher": [
87+
"$markdownlint",
88+
"$eslint-stylish",
89+
"$tsc"
90+
]
91+
},
92+
{
93+
"label": "Lint: All (fix)",
94+
"detail": "Run all linters with auto-fix across the workspace (prettier + markdown + TypeScript)",
95+
"dependsOn": [
96+
"Install: Node packages",
97+
"Lint: Prettier (fix)",
98+
"Lint: Markdown (fix)",
99+
"Lint: TypeScript (fix)"
100+
],
101+
"dependsOrder": "sequence",
102+
"problemMatcher": [
103+
"$markdownlint",
104+
"$eslint-stylish",
105+
"$tsc"
106+
]
107+
},
108+
{
109+
"label": "Lint: Markdown (verify)",
110+
"detail": "Verify formatting for all markdown files",
111+
"type": "shell",
112+
"command": "npx markdownlint-cli2",
113+
"problemMatcher": "$markdownlint"
114+
},
115+
{
116+
"label": "Lint: Markdown (fix)",
117+
"detail": "Auto-fix formatting for all markdown files",
118+
"type": "shell",
119+
"command": "npx markdownlint-cli2 --fix",
120+
"problemMatcher": "$markdownlint"
121+
},
122+
{
123+
"label": "Lint: Prettier (verify)",
124+
"detail": "Run Prettier check across the workspace",
125+
"type": "npm",
126+
"script": "lint:prettier"
127+
},
128+
{
129+
"label": "Lint: Prettier (fix)",
130+
"detail": "Run Prettier write across the workspace",
131+
"type": "npm",
132+
"script": "lint:prettier:fix",
133+
"dependsOn": "Install: Node packages",
134+
"dependsOrder": "sequence"
135+
},
136+
{
137+
"label": "Lint: TypeScript (verify)",
138+
"detail": "Run ESLint on TypeScript files",
139+
"type": "npm",
140+
"script": "lint:ts",
141+
"problemMatcher": "$eslint-stylish"
142+
},
143+
{
144+
"label": "Lint: TypeScript (fix)",
145+
"detail": "Auto-fix ESLint issues in TypeScript files",
146+
"type": "npm",
147+
"script": "lint:ts:fix",
148+
"problemMatcher": "$eslint-stylish"
149+
},
150+
{
151+
"label": "Lint: Typecheck (verify)",
152+
"detail": "Run TypeScript type checking without emitting files",
153+
"type": "npm",
154+
"script": "typecheck",
155+
"problemMatcher": "$tsc"
156+
},
157+
// ===================================
158+
// Serve application
159+
// ===================================
160+
{
161+
"label": "Run: Website dev server",
8162
"type": "npm",
9163
"script": "start",
10164
"isBackground": true,

0 commit comments

Comments
 (0)