@osovv/grace-cli 3.1.0 → 3.3.0
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/README.md +36 -4
- package/package.json +4 -2
- package/src/grace-lint.ts +22 -732
- package/src/grace.ts +1 -1
- package/src/lint/adapters/base.ts +11 -0
- package/src/lint/adapters/typescript.ts +185 -0
- package/src/lint/config.ts +65 -0
- package/src/lint/core.ts +907 -0
- package/src/lint/types.ts +69 -0
package/README.md
CHANGED
|
@@ -10,13 +10,13 @@ This repository packages GRACE as reusable skills for coding agents. The current
|
|
|
10
10
|
- knowledge-graph synchronization
|
|
11
11
|
- controller-managed sequential or multi-agent implementation
|
|
12
12
|
|
|
13
|
-
Current packaged version: `3.
|
|
13
|
+
Current packaged version: `3.3.0`
|
|
14
14
|
|
|
15
15
|
## What Changed In This Version
|
|
16
16
|
|
|
17
|
-
-
|
|
18
|
-
-
|
|
19
|
-
-
|
|
17
|
+
- Removed profile selection from `grace lint`; the CLI now validates only against the current GRACE artifact set.
|
|
18
|
+
- Limited `.grace-lint.json` to the current config schema, such as `ignoredDirs`.
|
|
19
|
+
- Kept the role-aware/adaptive lint model while making older GRACE repos fail loudly until they are updated.
|
|
20
20
|
|
|
21
21
|
## Repository Layout
|
|
22
22
|
|
|
@@ -189,6 +189,38 @@ bun install
|
|
|
189
189
|
bun run grace lint --path /path/to/grace-project
|
|
190
190
|
```
|
|
191
191
|
|
|
192
|
+
The lint command is role-aware and adapter-aware:
|
|
193
|
+
|
|
194
|
+
- structural checks stay language-agnostic
|
|
195
|
+
- export-map parity uses language adapters where available
|
|
196
|
+
- file behavior is driven by semantic roles instead of filename masks
|
|
197
|
+
|
|
198
|
+
Optional `MODULE_CONTRACT` fields for linting:
|
|
199
|
+
|
|
200
|
+
```text
|
|
201
|
+
ROLE: RUNTIME | TEST | BARREL | CONFIG | TYPES | SCRIPT
|
|
202
|
+
MAP_MODE: EXPORTS | LOCALS | SUMMARY | NONE
|
|
203
|
+
```
|
|
204
|
+
|
|
205
|
+
Default behavior:
|
|
206
|
+
|
|
207
|
+
- `RUNTIME` => strict export parity when a language adapter is available
|
|
208
|
+
- `TEST` => `MODULE_MAP` describes important locals, fixtures, and helpers instead of exports
|
|
209
|
+
- `BARREL` => `MODULE_MAP` can summarize aggregated exports
|
|
210
|
+
- `CONFIG` => export parity is skipped by default
|
|
211
|
+
- `TYPES` => type export surfaces are checked when the adapter supports them
|
|
212
|
+
- `SCRIPT` => `MODULE_MAP` describes important local entry points and helpers instead of exports
|
|
213
|
+
|
|
214
|
+
Optional repository config file:
|
|
215
|
+
|
|
216
|
+
```json
|
|
217
|
+
{
|
|
218
|
+
"ignoredDirs": ["tmp"]
|
|
219
|
+
}
|
|
220
|
+
```
|
|
221
|
+
|
|
222
|
+
`grace lint` is current-only. Older GRACE repositories should fail until they are updated to the current artifact set, especially `docs/verification-plan.xml`.
|
|
223
|
+
|
|
192
224
|
The validator checks marketplace/plugin metadata sync, version consistency, required fields, `.claude-plugin` structure, and hardcoded absolute paths. In branch or PR context it scopes validation to changed plugins via `git diff origin/main...HEAD`; otherwise it validates all plugins.
|
|
193
225
|
|
|
194
226
|
## Origin
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@osovv/grace-cli",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.3.0",
|
|
4
4
|
"description": "GRACE CLI for linting semantic markup, contracts, and GRACE XML artifacts with a Bun-powered grace binary.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"homepage": "https://github.com/osovv/grace-marketplace#readme",
|
|
@@ -25,6 +25,7 @@
|
|
|
25
25
|
"files": [
|
|
26
26
|
"src/grace.ts",
|
|
27
27
|
"src/grace-lint.ts",
|
|
28
|
+
"src/lint",
|
|
28
29
|
"README.md",
|
|
29
30
|
"LICENSE"
|
|
30
31
|
],
|
|
@@ -45,6 +46,7 @@
|
|
|
45
46
|
"grace": "./src/grace.ts"
|
|
46
47
|
},
|
|
47
48
|
"dependencies": {
|
|
48
|
-
"citty": "^0.2.2"
|
|
49
|
+
"citty": "^0.2.2",
|
|
50
|
+
"typescript": "^6.0.2"
|
|
49
51
|
}
|
|
50
52
|
}
|