@captain_z/zsk 1.8.7 → 1.8.9

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.
Files changed (47) hide show
  1. package/README.md +34 -16
  2. package/dist/bin.js +6 -0
  3. package/dist/bin.js.map +1 -1
  4. package/dist/commands/prepare.js +3 -0
  5. package/dist/commands/prepare.js.map +1 -1
  6. package/dist/core/anchor-drift.d.ts +79 -0
  7. package/dist/core/anchor-drift.js +198 -0
  8. package/dist/core/anchor-drift.js.map +1 -0
  9. package/dist/core/decoupling-eval.d.ts +53 -0
  10. package/dist/core/decoupling-eval.js +260 -0
  11. package/dist/core/decoupling-eval.js.map +1 -0
  12. package/dist/core/installer.js +2 -2
  13. package/dist/core/installer.js.map +1 -1
  14. package/dist/core/issue-publish-adapter.d.ts +50 -0
  15. package/dist/core/issue-publish-adapter.js +371 -0
  16. package/dist/core/issue-publish-adapter.js.map +1 -0
  17. package/dist/core/prepare-artifacts.d.ts +2 -0
  18. package/dist/core/prepare-artifacts.js +2 -0
  19. package/dist/core/prepare-artifacts.js.map +1 -1
  20. package/dist/core/prepare-readiness.d.ts +40 -0
  21. package/dist/core/prepare-readiness.js +268 -0
  22. package/dist/core/prepare-readiness.js.map +1 -0
  23. package/dist/core/prepare-sync.d.ts +2 -0
  24. package/dist/core/prepare-sync.js +8 -16
  25. package/dist/core/prepare-sync.js.map +1 -1
  26. package/dist/core/review-skill-policy.d.ts +74 -0
  27. package/dist/core/review-skill-policy.js +278 -0
  28. package/dist/core/review-skill-policy.js.map +1 -0
  29. package/dist/core/skills.js +38 -14
  30. package/dist/core/skills.js.map +1 -1
  31. package/dist/core/source-snapshot-adapters.d.ts +3 -0
  32. package/dist/core/source-snapshot-adapters.js.map +1 -1
  33. package/dist/core/stage-clarity-verification.js +30 -16
  34. package/dist/core/stage-clarity-verification.js.map +1 -1
  35. package/dist/core/task-decomposition.d.ts +64 -0
  36. package/dist/core/task-decomposition.js +325 -0
  37. package/dist/core/task-decomposition.js.map +1 -0
  38. package/dist/core/task-plan-adapter.d.ts +57 -0
  39. package/dist/core/task-plan-adapter.js +298 -0
  40. package/dist/core/task-plan-adapter.js.map +1 -0
  41. package/dist/core/validation-packet.d.ts +86 -0
  42. package/dist/core/validation-packet.js +313 -0
  43. package/dist/core/validation-packet.js.map +1 -0
  44. package/dist/core/workflow-orchestration-policy.d.ts +92 -0
  45. package/dist/core/workflow-orchestration-policy.js +215 -0
  46. package/dist/core/workflow-orchestration-policy.js.map +1 -0
  47. package/package.json +2 -2
@@ -0,0 +1 @@
1
+ {"version":3,"file":"anchor-drift.js","sourceRoot":"","sources":["../../src/core/anchor-drift.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,53 @@
1
+ export type DecouplingSkillSource = {
2
+ slug: string;
3
+ kind?: string;
4
+ skillType?: string;
5
+ contract?: DecouplingSkillContract;
6
+ body: string;
7
+ };
8
+ export type DecouplingSkillContract = {
9
+ responsibility?: string;
10
+ nonGoals?: string[];
11
+ modeRequirements?: {
12
+ direct?: DecouplingModeRequirement;
13
+ governed?: DecouplingModeRequirement;
14
+ strict?: DecouplingModeRequirement;
15
+ };
16
+ workflowOwnedConstraints?: string[];
17
+ qualityRubric?: string[];
18
+ };
19
+ export type DecouplingModeRequirement = {
20
+ hardInputs?: string[];
21
+ optionalInputs?: string[];
22
+ };
23
+ export type DecouplingWarningCategory = "orchestration" | "gate" | "dispatch" | "staffing" | "approval" | "issue-side-effect";
24
+ export type DecouplingWarning = {
25
+ level: "warning";
26
+ skill: string;
27
+ category: DecouplingWarningCategory;
28
+ phrase: string;
29
+ message: string;
30
+ };
31
+ export type DecouplingScenarioId = "direct-review-no-gates" | "governed-review" | "direct-coding" | "strict-gate";
32
+ export type DecouplingScenarioResult = {
33
+ id: DecouplingScenarioId;
34
+ label: string;
35
+ skill: string;
36
+ mode: "direct" | "governed" | "strict";
37
+ outcome: "useful" | "blocked" | "warning";
38
+ blockedReason?: string;
39
+ firstUsefulOutputLatencyProxy: number;
40
+ readFileCountProxy: number;
41
+ contextScaleProxy: number;
42
+ };
43
+ export type DecouplingBaselineReport = {
44
+ status: "warning-only";
45
+ hasFailures: false;
46
+ scenarios: DecouplingScenarioResult[];
47
+ warnings: DecouplingWarning[];
48
+ };
49
+ export type DecouplingBaselineInput = {
50
+ skills: DecouplingSkillSource[];
51
+ };
52
+ export declare function evaluateDecouplingBaseline(input: DecouplingBaselineInput): DecouplingBaselineReport;
53
+ export declare function formatDecouplingBaselineReport(report: DecouplingBaselineReport): string;
@@ -0,0 +1,260 @@
1
+ const scenarioOrder = [
2
+ "direct-review-no-gates",
3
+ "governed-review",
4
+ "direct-coding",
5
+ "strict-gate",
6
+ ];
7
+ const leakagePatterns = [
8
+ { category: "orchestration", phrase: "orchestration", pattern: /\borchestration\b/i },
9
+ { category: "orchestration", phrase: "workflow owns", pattern: /\bworkflow owns\b/i },
10
+ { category: "gate", phrase: "zsk gate assess", pattern: /\bzsk\s+gate\s+assess\b/i },
11
+ { category: "gate", phrase: "gate assess", pattern: /\bgate\s+assess\b/i },
12
+ { category: "gate", phrase: "stage gate", pattern: /\bstage\s+gates?\b/i },
13
+ { category: "dispatch", phrase: "dispatch plan", pattern: /\bdispatch\s+plan\b/i },
14
+ { category: "dispatch", phrase: "dispatch", pattern: /\bdispatch\b/i },
15
+ { category: "staffing", phrase: "staffing", pattern: /\bstaffing\b/i },
16
+ { category: "approval", phrase: "approval is required", pattern: /\bapproval\s+is\s+required\b/i },
17
+ { category: "approval", phrase: "must be approved", pattern: /\bmust\s+be\s+approved\b/i },
18
+ { category: "approval", phrase: "explicit approval", pattern: /\bexplicit\s+approval\b/i },
19
+ {
20
+ category: "issue-side-effect",
21
+ phrase: "create or update issue",
22
+ pattern: /\bcreate\s+or\s+update\s+(?:an?\s+)?issues?\b/i,
23
+ },
24
+ {
25
+ category: "issue-side-effect",
26
+ phrase: "must create issue",
27
+ pattern: /\bmust\s+(?:create|open|file|record|persist|update|sync)\s+(?:an?\s+)?issues?\b/i,
28
+ },
29
+ ];
30
+ const directReviewBlockerPatterns = [
31
+ {
32
+ phrase: "must run workflow gate before review",
33
+ pattern: /\bbefore\s+(?:any\s+)?review\b[^.\n]{0,160}\b(?:must|required|requires?)\b[^.\n]{0,120}\b(?:zsk\s+gate\s+assess|gate\s+assess|dispatch\s+plan|dispatch|approval|signoff|issue)\b/i,
34
+ },
35
+ {
36
+ phrase: "workflow approval is required before review output",
37
+ pattern: /\b(?:approval|signoff|gate|dispatch|issue)\b[^.\n]{0,120}\b(?:is|are)\s+required\b[^.\n]{0,120}\bbefore\b[^.\n]{0,80}\b(?:reviewer|review|findings|output)\b/i,
38
+ },
39
+ {
40
+ phrase: "issue side effect is required before findings",
41
+ pattern: /\bmust\s+(?:create|open|file|record|persist|update|sync)\s+(?:or\s+update\s+)?(?:an?\s+)?issues?\b[^.\n]{0,120}\bbefore\b[^.\n]{0,80}\b(?:reporting\s+)?findings?\b/i,
42
+ },
43
+ {
44
+ phrase: "missing workflow evidence blocks direct review",
45
+ pattern: /\bmissing\b[^.\n]{0,80}\b(?:gate|signoff|approval|dispatch|issue|validation\s+packet|anchor\s+packet)\b[^.\n]{0,120}\b(?:blocks?|blocked|must\s+stop|cannot\s+review|do\s+not\s+review)\b/i,
46
+ },
47
+ {
48
+ phrase: "review is forbidden without workflow evidence",
49
+ pattern: /\bdo\s+not\s+review\b[^.\n]{0,120}\b(?:without|until)\b[^.\n]{0,120}\b(?:gate|signoff|approval|dispatch|issue|validation\s+packet|anchor\s+packet)\b/i,
50
+ },
51
+ ];
52
+ const workflowOwnedInputPatterns = [
53
+ { category: "orchestration", pattern: /\b(?:workflow|workflow-packet|workflow-required-evidence|peer-skill)\b/i },
54
+ { category: "gate", pattern: /\b(?:gate|gate-evidence|stage-gate|smoke)\b/i },
55
+ { category: "dispatch", pattern: /\b(?:dispatch|route|routing)\b/i },
56
+ { category: "staffing", pattern: /\b(?:staff|staffing|subagent|role-lane)\b/i },
57
+ { category: "approval", pattern: /\b(?:approval|approve|signoff|sign-off|waiver)\b/i },
58
+ { category: "issue-side-effect", pattern: /\b(?:issue|ticket|record)\b/i },
59
+ ];
60
+ export function evaluateDecouplingBaseline(input) {
61
+ const warnings = input.skills.flatMap((skill) => collectSkillWarnings(skill));
62
+ const scenarios = scenarioOrder.map((id) => buildScenario(id, input.skills, warnings));
63
+ return {
64
+ status: "warning-only",
65
+ hasFailures: false,
66
+ scenarios,
67
+ warnings,
68
+ };
69
+ }
70
+ export function formatDecouplingBaselineReport(report) {
71
+ const lines = [
72
+ "# Decoupling Eval Baseline",
73
+ "",
74
+ `Status: ${report.status}`,
75
+ `Failure mode: ${report.hasFailures ? "failing" : "warning-only"}`,
76
+ "",
77
+ "## Scenarios",
78
+ "",
79
+ "| Scenario | Skill | Mode | Outcome | Blocked reason | Latency proxy | File proxy | Context proxy |",
80
+ "| --- | --- | --- | --- | --- | ---: | ---: | ---: |",
81
+ ...report.scenarios.map((scenario) => `| ${scenario.id} | ${scenario.skill} | ${scenario.mode} | ${scenario.outcome} | ${escapeTableCell(scenario.blockedReason ?? "")} | ${scenario.firstUsefulOutputLatencyProxy} | ${scenario.readFileCountProxy} | ${scenario.contextScaleProxy} |`),
82
+ "",
83
+ "## Decoupling Warnings",
84
+ "",
85
+ ];
86
+ if (report.warnings.length === 0) {
87
+ lines.push("No workflow responsibility leakage warnings detected.");
88
+ }
89
+ else {
90
+ lines.push("| Skill | Category | Phrase | Message |");
91
+ lines.push("| --- | --- | --- | --- |");
92
+ for (const warning of report.warnings) {
93
+ lines.push(`| ${warning.skill} | ${warning.category} | ${escapeTableCell(warning.phrase)} | ${escapeTableCell(warning.message)} |`);
94
+ }
95
+ }
96
+ return `${lines.join("\n")}\n`;
97
+ }
98
+ function collectSkillWarnings(skill) {
99
+ if (isWorkflowSkill(skill)) {
100
+ return [];
101
+ }
102
+ const seen = new Set();
103
+ const warnings = [];
104
+ const contractBlocker = findWorkflowOwnedDirectHardInput(skill.contract);
105
+ if (contractBlocker) {
106
+ warnings.push({
107
+ level: "warning",
108
+ skill: skill.slug,
109
+ category: contractBlocker.category,
110
+ phrase: `contract direct hard input: ${contractBlocker.input}`,
111
+ message: `${skill.slug} declares ${contractBlocker.input} as a direct-mode hard input. ` +
112
+ "Single-skill direct mode should treat workflow-owned material as optional context unless a workflow invokes strict mode.",
113
+ });
114
+ }
115
+ for (const leakage of leakagePatterns) {
116
+ if (!leakage.pattern.test(skill.body)) {
117
+ continue;
118
+ }
119
+ const key = `${skill.slug}:${leakage.category}:${leakage.phrase}`;
120
+ if (seen.has(key)) {
121
+ continue;
122
+ }
123
+ seen.add(key);
124
+ warnings.push({
125
+ level: "warning",
126
+ skill: skill.slug,
127
+ category: leakage.category,
128
+ phrase: leakage.phrase,
129
+ message: `${skill.slug} mentions ${leakage.phrase}, which may be workflow-owned responsibility. ` +
130
+ "Keep single skills focused on intrinsic responsibilities and let workflows own orchestration.",
131
+ });
132
+ }
133
+ return warnings;
134
+ }
135
+ function buildScenario(id, skills, warnings) {
136
+ switch (id) {
137
+ case "direct-review-no-gates":
138
+ return buildDirectReviewScenario(skills, warnings);
139
+ case "governed-review":
140
+ return buildGovernedReviewScenario(skills, warnings);
141
+ case "direct-coding":
142
+ return buildDirectCodingScenario(skills, warnings);
143
+ case "strict-gate":
144
+ return buildStrictGateScenario(skills);
145
+ }
146
+ }
147
+ function buildDirectReviewScenario(skills, warnings) {
148
+ const skill = findSkill(skills, "review");
149
+ const skillWarnings = warningsForSkill(warnings, "review");
150
+ const blocker = skill === undefined ? undefined : findDirectReviewBlocker(skill);
151
+ const outcome = blocker ? "blocked" : skillWarnings.length > 0 ? "warning" : "useful";
152
+ const blockedReason = blocker
153
+ ? `Direct review has hard prerequisite ${blocker.source}: ${blocker.phrase}.`
154
+ : undefined;
155
+ return scenarioResult({
156
+ id: "direct-review-no-gates",
157
+ label: "Direct review can produce useful findings without workflow evidence gates.",
158
+ skill,
159
+ skillSlug: "review",
160
+ mode: "direct",
161
+ outcome,
162
+ blockedReason,
163
+ warnings: skillWarnings,
164
+ });
165
+ }
166
+ function buildGovernedReviewScenario(skills, warnings) {
167
+ const skill = findSkill(skills, "review");
168
+ return scenarioResult({
169
+ id: "governed-review",
170
+ label: "Workflow supplies sequencing and evidence, while review owns findings.",
171
+ skill,
172
+ skillSlug: "review",
173
+ mode: "governed",
174
+ outcome: "useful",
175
+ warnings: warningsForSkill(warnings, "review"),
176
+ });
177
+ }
178
+ function buildDirectCodingScenario(skills, warnings) {
179
+ const skill = findSkill(skills, "coding");
180
+ const skillWarnings = warningsForSkill(warnings, "coding");
181
+ return scenarioResult({
182
+ id: "direct-coding",
183
+ label: "Coding can make progress from a scoped issue without depending on peer skills.",
184
+ skill,
185
+ skillSlug: "coding",
186
+ mode: "direct",
187
+ outcome: skillWarnings.length > 0 ? "warning" : "useful",
188
+ warnings: skillWarnings,
189
+ });
190
+ }
191
+ function buildStrictGateScenario(skills) {
192
+ const skill = findSkill(skills, "zsk");
193
+ return scenarioResult({
194
+ id: "strict-gate",
195
+ label: "Strict gates remain workflow-owned and can block when required evidence is missing.",
196
+ skill,
197
+ skillSlug: "zsk",
198
+ mode: "strict",
199
+ outcome: "blocked",
200
+ blockedReason: "Strict gate requires workflow-owned evidence before downstream execution.",
201
+ warnings: [],
202
+ });
203
+ }
204
+ function scenarioResult(input) {
205
+ const bodyLength = input.skill?.body.length ?? 0;
206
+ const blockedPenalty = input.outcome === "blocked" ? 2 : 0;
207
+ const governedPenalty = input.mode === "direct" ? 0 : 2;
208
+ const readFileCountProxy = Math.max(1, 1 + governedPenalty + blockedPenalty + input.warnings.length);
209
+ const firstUsefulOutputLatencyProxy = Math.max(1, 1 + blockedPenalty + input.warnings.length);
210
+ return {
211
+ id: input.id,
212
+ label: input.label,
213
+ skill: input.skill?.slug ?? input.skillSlug,
214
+ mode: input.mode,
215
+ outcome: input.outcome,
216
+ blockedReason: input.blockedReason,
217
+ firstUsefulOutputLatencyProxy,
218
+ readFileCountProxy,
219
+ contextScaleProxy: Math.max(1, Math.ceil(bodyLength / 240) + readFileCountProxy),
220
+ };
221
+ }
222
+ function findSkill(skills, slug) {
223
+ return skills.find((skill) => skill.slug === slug);
224
+ }
225
+ function warningsForSkill(warnings, slug) {
226
+ return warnings.filter((warning) => warning.skill === slug);
227
+ }
228
+ function findDirectReviewBlocker(skill) {
229
+ const contractBlocker = findWorkflowOwnedDirectHardInput(skill.contract);
230
+ if (contractBlocker) {
231
+ return {
232
+ source: "contract",
233
+ phrase: `${contractBlocker.input} is declared as a direct-mode hard input`,
234
+ };
235
+ }
236
+ const bodyBlocker = directReviewBlockerPatterns.find((blocker) => blocker.pattern.test(skill.body));
237
+ return bodyBlocker ? { source: "body", phrase: bodyBlocker.phrase } : undefined;
238
+ }
239
+ function findWorkflowOwnedDirectHardInput(contract) {
240
+ const hardInputs = contract?.modeRequirements?.direct?.hardInputs ?? [];
241
+ for (const input of hardInputs) {
242
+ const matched = workflowOwnedInputPatterns.find((entry) => entry.pattern.test(input));
243
+ if (matched) {
244
+ return { input, category: matched.category };
245
+ }
246
+ }
247
+ return undefined;
248
+ }
249
+ function isWorkflowSkill(skill) {
250
+ const skillType = skill.skillType?.toLowerCase();
251
+ if (skillType) {
252
+ return skillType === "workflow";
253
+ }
254
+ const kind = skill.kind?.toLowerCase();
255
+ return kind === "workflow" || kind === "workflow-orchestrator";
256
+ }
257
+ function escapeTableCell(value) {
258
+ return value.replaceAll("|", "\\|").replaceAll("\n", " ");
259
+ }
260
+ //# sourceMappingURL=decoupling-eval.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"decoupling-eval.js","sourceRoot":"","sources":["../../src/core/decoupling-eval.ts"],"names":[],"mappings":"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"}
@@ -83,9 +83,9 @@ export function skillRelPath(skill, layout = "flat") {
83
83
  }
84
84
  async function toClaudePluginSkill(skill) {
85
85
  const raw = await readFile(skill.file, "utf8");
86
- // Package-installed skills are namespaced as zsk:<slug>. Claude plugin
86
+ // Package-installed skills are namespaced as zsk-<slug>. Claude plugin
87
87
  // skills should keep the bare slug so slash commands resolve as /zsk:<slug>.
88
- return raw.replace(/^name:\s+zsk:([a-z0-9-]+)\s*$/m, `name: ${skill.slug}`);
88
+ return raw.replace(/^name:\s+zsk[:-]([a-z0-9-]+)\s*$/m, `name: ${skill.slug}`);
89
89
  }
90
90
  async function stageClaudePluginFiles(stagingDir, skillNames, zskVersion) {
91
91
  const pluginDir = join(stagingDir, ".claude-plugin");
@@ -1 +1 @@
1
- {"version":3,"file":"installer.js","sourceRoot":"","sources":["../../src/core/installer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"installer.js","sourceRoot":"","sources":["../../src/core/installer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,50 @@
1
+ import { type TaskCandidate, type TaskDecompositionAssessment, type TaskDecompositionResult } from "./task-decomposition.js";
2
+ export type IssuePublishMode = "dry-run" | "write";
3
+ export type IssuePublishOptions = {
4
+ featureSlug: string;
5
+ parentPath: string;
6
+ mode?: IssuePublishMode;
7
+ selectedCandidateIds?: string[];
8
+ targetRoot?: string;
9
+ };
10
+ export type PublishedIssueDraft = {
11
+ candidateId: string;
12
+ number: string;
13
+ title: string;
14
+ path: string;
15
+ status: "ready-for-agent" | "ready-for-human";
16
+ workMode: TaskCandidate["workMode"];
17
+ blockedBy: string[];
18
+ unblocks: string[];
19
+ priority: TaskCandidate["priority"];
20
+ body: string;
21
+ };
22
+ export type IssuePublishPlan = {
23
+ version: 1;
24
+ kind: "issue-publish-plan";
25
+ sourceEngine: "task-decomposition";
26
+ source: TaskDecompositionResult["source"];
27
+ assessment: TaskDecompositionAssessment;
28
+ mode: IssuePublishMode;
29
+ parentPath: string;
30
+ featureSlug: string;
31
+ selectedCandidateIds: string[];
32
+ localSideEffects: "none" | "write-issue-markdown";
33
+ workflowSideEffects: [];
34
+ issues: PublishedIssueDraft[];
35
+ };
36
+ export type IssuePublishDiagnostic = {
37
+ code: string;
38
+ severity: "warning" | "failure";
39
+ candidateId?: string;
40
+ message: string;
41
+ evidence: string[];
42
+ };
43
+ export type IssuePublishAssessment = {
44
+ status: "valid" | "warning" | "invalid";
45
+ targetScore: 100;
46
+ score: number;
47
+ diagnostics: IssuePublishDiagnostic[];
48
+ };
49
+ export declare function createIssuePublishPlan(decomposition: TaskDecompositionResult, options: IssuePublishOptions): IssuePublishPlan;
50
+ export declare function evaluateIssuePublishPlan(plan: IssuePublishPlan): IssuePublishAssessment;