@erclx/aitk 2.2.0 → 3.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.
|
@@ -11,7 +11,7 @@ Read these files in parallel:
|
|
|
11
11
|
|
|
12
12
|
- `${CLAUDE_SKILL_DIR}/references/branch.md`: branch format, valid types, and constraints
|
|
13
13
|
- `${CLAUDE_SKILL_DIR}/references/pr.md`: structure, rules, and banned phrases
|
|
14
|
-
- `${CLAUDE_SKILL_DIR}/references/labels.md`: label map format, matching, and the missing-label warning. Skip when the project has no `.claude/pr-labels.toml`.
|
|
14
|
+
- `${CLAUDE_SKILL_DIR}/references/labels.md`: label map format, matching, and the missing-label warning. Skip when the project has no `.claude/aitk/pr-labels.toml`.
|
|
15
15
|
- `${CLAUDE_SKILL_DIR}/../../standards/markdown.md`: banned words, punctuation, and formatting for all generated text
|
|
16
16
|
- The `write-human` skill: voice, rhythm, and sentence construction for all generated text
|
|
17
17
|
- `${CLAUDE_SKILL_DIR}/../../standards/versioning.md`: phase label vs semver discipline
|
|
@@ -84,7 +84,7 @@ A detached HEAD gives `git branch --show-current` an empty result, which would r
|
|
|
84
84
|
|
|
85
85
|
### Labels
|
|
86
86
|
|
|
87
|
-
Read `.claude/pr-labels.toml` from the project root. A project that has not declared a map gets no labels and no warning, since a label set this skill supplied would be a guess about that project's surfaces.
|
|
87
|
+
Read `.claude/aitk/pr-labels.toml` from the project root. A project that has not declared a map gets no labels and no warning, since a label set this skill supplied would be a guess about that project's surfaces.
|
|
88
88
|
|
|
89
89
|
When the file resolves, match it against the name-only diff per `${CLAUDE_SKILL_DIR}/references/labels.md` and write the comma-separated result into `pr_labels` below. Leave `pr_labels` empty when no map resolves or no prefix matches, which skips the labelling command rather than running it against nothing.
|
|
90
90
|
|
|
@@ -17,7 +17,7 @@ Does not govern:
|
|
|
17
17
|
|
|
18
18
|
## Map format
|
|
19
19
|
|
|
20
|
-
The map lives at `.claude/pr-labels.toml` in the project root. Each key under `[domains]` is a label name and its value is the list of path prefixes that earn it.
|
|
20
|
+
The map lives at `.claude/aitk/pr-labels.toml` in the project root. Each key under `[domains]` is a label name and its value is the list of path prefixes that earn it.
|
|
21
21
|
|
|
22
22
|
```toml
|
|
23
23
|
[domains]
|
|
@@ -94,11 +94,13 @@ when the project authored it, or `drifted` when no stamp covers it.
|
|
|
94
94
|
|
|
95
95
|
Use `--json` for the machine-readable report and `--exit-code` to fail a CI job. Orphaned
|
|
96
96
|
files are excluded from that exit code, since a project-authored rule never
|
|
97
|
-
converges. Attribution reads `.claude/aitk.json`, which every install and
|
|
98
|
-
writes.
|
|
97
|
+
converges. Attribution reads `.claude/aitk/config.json`, which every install and
|
|
98
|
+
sync writes.
|
|
99
99
|
|
|
100
|
-
A target installed before stamping shipped has no such file, and
|
|
101
|
-
|
|
100
|
+
A target installed before stamping shipped has no such file, and neither does one
|
|
101
|
+
stamped before the file moved into `.claude/aitk/`, which is read as absent
|
|
102
|
+
rather than migrated. Both fall back to the toolkit's own git history.
|
|
103
|
+
Installed content matching any
|
|
102
104
|
version that history ever published proves the file is untouched, so it reports
|
|
103
105
|
`stale` naming the commit it came from, and content matching no published
|
|
104
106
|
version stays `drifted`. A toolkit reached outside a git clone, which is what a
|
package/docs/target-projects.md
CHANGED
|
@@ -124,7 +124,7 @@ The report opens by naming the binary running it. The installed version reads ag
|
|
|
124
124
|
|
|
125
125
|
A `stale` file still matches what the toolkit installed, so the update is mechanical. A `customized` file carries local edits, so taking the upstream version is a decision and `aitk:claude-seed-sync` is the tool for it. A `stranded` file sits where an older toolkit installed it and the toolkit has since moved, which is what `aitk:migration-standards` handles.
|
|
126
126
|
|
|
127
|
-
That attribution comes from `.claude/aitk.json`, a stamp every install and sync writes. Snippets and governance record a hash per installed file. Tooling records the stack chain it resolved instead, since its install runs no per-file walk to attribute.
|
|
127
|
+
That attribution comes from `.claude/aitk/config.json`, a stamp every install and sync writes. Snippets and governance record a hash per installed file. Tooling records the stack chain it resolved instead, since its install runs no per-file walk to attribute.
|
|
128
128
|
|
|
129
129
|
Each domain holds its own toolkit commit, so syncing governance today does not move the revision snippets measures against, and each domain reports the upstream commits touching its own source path. Running any sync stamps that domain, and the report names the ones still unstamped.
|
|
130
130
|
|
package/package.json
CHANGED
package/src/sync/stamp.ts
CHANGED
|
@@ -53,7 +53,7 @@ export interface Stamp {
|
|
|
53
53
|
}
|
|
54
54
|
|
|
55
55
|
export function stampPath(target: string): string {
|
|
56
|
-
return join(target, '.claude', 'aitk.json')
|
|
56
|
+
return join(target, '.claude', 'aitk', 'config.json')
|
|
57
57
|
}
|
|
58
58
|
|
|
59
59
|
export function hashContent(content: Buffer | string): string {
|