@csark0812/skeleton 4.0.1 → 5.0.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 +11 -15
- package/dist/audit/config/types.d.ts +8 -5
- package/dist/audit/core/context.d.ts +5 -0
- package/dist/audit/core/repo-files.d.ts +5 -0
- package/dist/audit/core/report.d.ts +1 -0
- package/dist/audit/core/review-coverage.d.ts +18 -0
- package/dist/audit/rules/review-coverage.d.ts +8 -0
- package/dist/cli.js +540 -686
- package/dist/plugin-types.js +6 -0
- package/package.json +2 -2
- package/schemas/config.schema.json +18 -17
- package/templates/skeleton-init/config.yaml +0 -5
- package/templates/skeleton-init/pre-commit-config.yaml +9 -0
- package/templates/skeleton-init/skeleton.toml +6 -7
- package/dist/hooks/customize-on-skill-read.js +0 -14813
- package/templates/skeleton-init/claude-settings.fragment.json +0 -24
- package/templates/skeleton-init/codex-hooks.fragment.json +0 -15
- package/templates/skeleton-init/cursor-hooks.fragment.json +0 -11
package/dist/plugin-types.js
CHANGED
|
@@ -12,6 +12,12 @@ function issue(rule, file, details, options) {
|
|
|
12
12
|
severity: selected?.severity ?? "error"
|
|
13
13
|
};
|
|
14
14
|
}
|
|
15
|
+
var REREAD_CODES = new Set([
|
|
16
|
+
"review-dependency-changed",
|
|
17
|
+
"impacted-document-review-required",
|
|
18
|
+
"review-document-changed",
|
|
19
|
+
"review-dependency-set-changed"
|
|
20
|
+
]);
|
|
15
21
|
// src/audit/core/shared.ts
|
|
16
22
|
function normalizeRelPath(p) {
|
|
17
23
|
let out = p.replace(/\\/g, "/");
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@csark0812/skeleton",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "5.0.0",
|
|
4
4
|
"description": "SSOT audit CLI for agent harness repos",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|
|
@@ -34,7 +34,7 @@
|
|
|
34
34
|
},
|
|
35
35
|
"packageManager": "bun@1.2.21",
|
|
36
36
|
"scripts": {
|
|
37
|
-
"build": "bun build src/cli.ts --target=node --outfile=dist/cli.js && bun build src/
|
|
37
|
+
"build": "bun build src/cli.ts --target=node --outfile=dist/cli.js && bun build src/plugin-types.ts --target=node --format=esm --outfile=dist/plugin-types.js --packages=external && bun build src/result-types.ts --target=node --format=esm --outfile=dist/result-types.js --packages=external && tsc -p tsconfig.types.json",
|
|
38
38
|
"test": "bun test",
|
|
39
39
|
"test:audit": "bun test src/audit/__tests__",
|
|
40
40
|
"test:cli": "bun test src/__tests__/cli",
|
|
@@ -88,26 +88,10 @@
|
|
|
88
88
|
}
|
|
89
89
|
}
|
|
90
90
|
},
|
|
91
|
-
"customize": {
|
|
92
|
-
"type": "object",
|
|
93
|
-
"additionalProperties": false,
|
|
94
|
-
"description": "Customize inject options for IDE hooks and `skeleton customize resolve`",
|
|
95
|
-
"properties": {
|
|
96
|
-
"alwaysInclude": {
|
|
97
|
-
"type": "array",
|
|
98
|
-
"items": {
|
|
99
|
-
"type": "string",
|
|
100
|
-
"minLength": 1,
|
|
101
|
-
"pattern": "^[a-zA-Z0-9._-]+\\.md$"
|
|
102
|
-
},
|
|
103
|
-
"description": "Basenames under .skeleton/customize/ appended whenever a skill customize injects (even if the slug file is missing or empty)"
|
|
104
|
-
}
|
|
105
|
-
}
|
|
106
|
-
},
|
|
107
91
|
"skillOwnership": {
|
|
108
92
|
"type": "object",
|
|
109
93
|
"additionalProperties": false,
|
|
110
|
-
"description": "Provenance-aware skill body linting: foreign (synced) skills are skipped; owned local skills
|
|
94
|
+
"description": "Provenance-aware skill body linting: foreign (synced) skills are skipped; owned local skills stay audited",
|
|
111
95
|
"properties": {
|
|
112
96
|
"lockfile": {
|
|
113
97
|
"type": "string",
|
|
@@ -126,6 +110,23 @@
|
|
|
126
110
|
}
|
|
127
111
|
}
|
|
128
112
|
},
|
|
113
|
+
"reviewCoverage": {
|
|
114
|
+
"type": "object",
|
|
115
|
+
"additionalProperties": false,
|
|
116
|
+
"description": "Require files matching include to appear in at least one scanned document's review-deps. Omit the section to use built-in code defaults. Set include to [] to disable.",
|
|
117
|
+
"properties": {
|
|
118
|
+
"include": {
|
|
119
|
+
"type": "array",
|
|
120
|
+
"items": { "type": "string", "minLength": 1 },
|
|
121
|
+
"description": "Repo-relative globs that require an owning paper. Empty array disables coverage and uncovered-changed-path."
|
|
122
|
+
},
|
|
123
|
+
"exclude": {
|
|
124
|
+
"type": "array",
|
|
125
|
+
"items": { "type": "string", "minLength": 1 },
|
|
126
|
+
"description": "Globs removed from the coverage set (added to built-in test and fixture excludes)"
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
},
|
|
129
130
|
"reviewProof": {
|
|
130
131
|
"type": "object",
|
|
131
132
|
"additionalProperties": false,
|
|
@@ -14,11 +14,6 @@ deny:
|
|
|
14
14
|
|
|
15
15
|
daysUntilStale: 365
|
|
16
16
|
|
|
17
|
-
# Optional: basenames under .skeleton/customize/ appended on every skill inject
|
|
18
|
-
# customize:
|
|
19
|
-
# alwaysInclude:
|
|
20
|
-
# - shared-agent-references.md
|
|
21
|
-
|
|
22
17
|
# Optional: skill body ownership (skills-lock.json github entries are foreign by default)
|
|
23
18
|
# skillOwnership:
|
|
24
19
|
# lockfile: skills-lock.json
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
# Installed by `skeleton init`. Run `pre-commit install` once per machine.
|
|
2
|
+
repos:
|
|
3
|
+
- repo: local
|
|
4
|
+
hooks:
|
|
5
|
+
- id: skeleton-validate-staged
|
|
6
|
+
name: skeleton validate changed (staged)
|
|
7
|
+
entry: node node_modules/@csark0812/skeleton/dist/cli.js validate changed --staged
|
|
8
|
+
language: system
|
|
9
|
+
pass_filenames: false
|
|
@@ -15,15 +15,14 @@ exclude = [
|
|
|
15
15
|
[deny]
|
|
16
16
|
paths = []
|
|
17
17
|
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
# [reviewProof]
|
|
21
|
-
# mode = "hash"
|
|
18
|
+
[reviewProof]
|
|
19
|
+
mode = "hash"
|
|
22
20
|
# lockfile = ".skeleton/review-lock.json"
|
|
23
21
|
|
|
24
|
-
#
|
|
25
|
-
# [
|
|
26
|
-
#
|
|
22
|
+
# Defaults apply when this section is omitted. Empty include disables the gate.
|
|
23
|
+
# [reviewCoverage]
|
|
24
|
+
# include = ["**/*.{ts,tsx,js,jsx,mjs,cjs,py}", "package.json", "project.json"]
|
|
25
|
+
# exclude = ["**/__tests__/**", "**/*.test.*", "**/*.spec.*", "**/fixtures/**", "templates/**", "**/node_modules/**", "**/dist/**"]
|
|
27
26
|
|
|
28
27
|
# Optional: near-dupe / SSOT-summary tunables
|
|
29
28
|
# [docsLint]
|