@captain_z/zsk 1.8.2 → 1.8.3

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.
@@ -3,7 +3,7 @@ import { dirname, join, resolve } from "node:path";
3
3
  import YAML from "yaml";
4
4
  import { flattenProjectSources } from "./config.js";
5
5
  import { inferSourceOrigin } from "./origin-detection.js";
6
- import { gateThresholdForStage, writeGateAssessment } from "./stage-quality.js";
6
+ import { gateThresholdForStage, normalizeReviewTargetPath, reviewModeForReviewTarget, writeGateAssessment, } from "./stage-quality.js";
7
7
  import { getWorkspacePath } from "./workspace-layout.js";
8
8
  const DEFAULT_PACKET_TIMEOUT_POLICY = {
9
9
  heartbeatIntervalMs: 60_000,
@@ -11,6 +11,19 @@ const DEFAULT_PACKET_TIMEOUT_POLICY = {
11
11
  maxAttempts: 2,
12
12
  onTimeout: "fallback-to-leader-sequential",
13
13
  };
14
+ const PREPROPOSAL_ROLE_NAMES = [
15
+ "product-owner",
16
+ "business-analyst",
17
+ "planner",
18
+ "ux-specialist",
19
+ "design-specialist",
20
+ "architect",
21
+ "qa-engineer",
22
+ "researcher",
23
+ "verifier",
24
+ "lead-integrator",
25
+ ];
26
+ const PREPROPOSAL_REVIEW_MODES = new Set(["preproposal", "raw-source"]);
14
27
  const BUILTIN_ROLE_POOL = {
15
28
  roles: Object.fromEntries([
16
29
  rolePoolEntry("lead-integrator", {
@@ -29,21 +42,21 @@ const BUILTIN_ROLE_POOL = {
29
42
  }),
30
43
  rolePoolEntry("product-owner", {
31
44
  subagentType: "analyst",
32
- stages: ["prepare", "proposal", "spec", "review", "verify", "acceptance"],
45
+ stages: ["prepare", "preproposal", "proposal", "spec", "review", "verify", "acceptance"],
33
46
  lanes: ["product", "pm", "requirement", "requirements", "srs", "prd"],
34
47
  activation: "when product or requirement evidence is configured or in scope",
35
48
  reason: "interpret product scope, requirement semantics, priorities, and acceptance gaps",
36
49
  }),
37
50
  rolePoolEntry("business-analyst", {
38
51
  subagentType: "analyst",
39
- stages: ["proposal", "spec"],
52
+ stages: ["preproposal", "proposal", "spec"],
40
53
  lanes: ["business", "domain", "process", "rules"],
41
54
  activation: "when domain process or business-rule evidence is configured or in scope",
42
55
  reason: "map domain process, terminology, business rules, and edge cases",
43
56
  }),
44
57
  rolePoolEntry("architect", {
45
58
  subagentType: "architect",
46
- stages: ["proposal", "spec", "design", "review"],
59
+ stages: ["preproposal", "proposal", "spec", "design", "review"],
47
60
  activation: "when architecture, API, system-boundary, or dependency decisions are in scope",
48
61
  reason: "review system boundaries, module relationships, contracts, and technical risks",
49
62
  }),
@@ -63,21 +76,21 @@ const BUILTIN_ROLE_POOL = {
63
76
  }),
64
77
  rolePoolEntry("design-specialist", {
65
78
  subagentType: "designer",
66
- stages: ["prepare", "design"],
79
+ stages: ["prepare", "preproposal", "design"],
67
80
  lanes: ["design", "ui", "visual"],
68
81
  activation: "when design, UI, visual, prototype, or asset sources are configured",
69
82
  reason: "inspect design assets, screens, visual states, and design-source gaps",
70
83
  }),
71
84
  rolePoolEntry("ux-specialist", {
72
85
  subagentType: "designer",
73
- stages: ["prepare"],
86
+ stages: ["prepare", "preproposal"],
74
87
  lanes: ["ux", "ue", "user-experience", "research"],
75
88
  activation: "when UX, UE, user-flow, or research sources are configured",
76
89
  reason: "inspect user flows, interaction constraints, and usability ambiguity",
77
90
  }),
78
91
  rolePoolEntry("qa-engineer", {
79
92
  subagentType: "test-engineer",
80
- stages: ["prepare", "spec", "task", "coding", "review", "verify"],
93
+ stages: ["prepare", "preproposal", "spec", "task", "coding", "fix", "review", "verify"],
81
94
  lanes: ["qa", "test", "testing", "quality"],
82
95
  activation: "when QA, test, acceptance, or quality evidence is configured or in scope",
83
96
  reason: "connect requirements to acceptance scenarios, test coverage, and verification evidence",
@@ -104,19 +117,19 @@ const BUILTIN_ROLE_POOL = {
104
117
  }),
105
118
  rolePoolEntry("researcher", {
106
119
  subagentType: "researcher",
107
- stages: ["prepare"],
120
+ stages: ["prepare", "preproposal"],
108
121
  activation: "optional when current official or external evidence is required",
109
122
  reason: "collect official/current external references only when configured local sources are insufficient",
110
123
  }),
111
124
  rolePoolEntry("planner", {
112
125
  subagentType: "planner",
113
- stages: ["task"],
126
+ stages: ["preproposal", "task"],
114
127
  activation: "when task sequencing, dependencies, and risk flags are in scope",
115
128
  reason: "sequence implementation tasks, dependencies, ownership, and evidence hooks",
116
129
  }),
117
130
  rolePoolEntry("executor", {
118
131
  subagentType: "executor",
119
- stages: ["task", "coding"],
132
+ stages: ["task", "coding", "fix"],
120
133
  activation: "when implementation ownership, write scope, or scoped code changes are in scope",
121
134
  reason: "implement or estimate scoped code ownership and write boundaries",
122
135
  }),
@@ -159,6 +172,8 @@ const ROLE_CONTRACTS = {
159
172
  outputs: [
160
173
  ".zsk/evidence/{scope}/{run}/integration-summary.md",
161
174
  ".zsk/raws/manifest.json when prepare snapshots change",
175
+ ".zsk/raws/manifest.json and .zsk/raws/index.md when preproposal raw resources change",
176
+ ".zsk/evidence/preproposal/{run}/readiness-review.md when running preproposal",
162
177
  ],
163
178
  evidenceRequired: [
164
179
  "integrated lane status with pass/blocker/waived reason for each role",
@@ -173,15 +188,22 @@ const ROLE_CONTRACTS = {
173
188
  "product-owner": {
174
189
  owns: ["business goals, product scope, priorities, requirement semantics, and acceptance meaning"],
175
190
  doesNotOwn: ["backend implementation details", "technical feasibility signoff without architect/engineer evidence"],
176
- outputs: [".zsk/evidence/{scope}/{run}/product-source-report.md"],
177
- evidenceRequired: ["requirement/source IDs or paths behind each product claim", "open requirement gaps and acceptance risks"],
191
+ outputs: [
192
+ ".zsk/evidence/{scope}/{run}/product-source-report.md",
193
+ ".zsk/raws/prepare/product/{topic}/product-brief.md when running preproposal",
194
+ ".zsk/evidence/preproposal/{run}/checkpoint-product-review.md when running preproposal",
195
+ ],
196
+ evidenceRequired: ["requirement/source IDs or paths behind each product claim", "open requirement gaps and acceptance risks", "product checkpoint verdict before roadmap/decomposition when running preproposal"],
178
197
  forbiddenDecisions: ["Do not rewrite technical design or implementation ownership.", "Do not turn weak/inferred evidence into accepted requirements."],
179
198
  stopCondition: "Product facts, gaps, and acceptance risks are explicit and handed to lead-integrator.",
180
199
  },
181
200
  "business-analyst": {
182
201
  owns: ["domain process, terminology, business rules, and edge cases"],
183
202
  doesNotOwn: ["UI aesthetics", "implementation architecture"],
184
- outputs: [".zsk/evidence/{scope}/{run}/business-rule-map.md"],
203
+ outputs: [
204
+ ".zsk/evidence/{scope}/{run}/business-rule-map.md",
205
+ ".zsk/raws/prepare/product/{topic}/business-context.md when running preproposal",
206
+ ],
185
207
  evidenceRequired: ["business rule source references", "ambiguity list for unresolved process or terminology conflicts"],
186
208
  forbiddenDecisions: ["Do not choose product priority or implementation strategy.", "Do not resolve contradictory business rules silently."],
187
209
  stopCondition: "Rules, edge cases, and unresolved ambiguities are documented for lead-integrator.",
@@ -189,7 +211,11 @@ const ROLE_CONTRACTS = {
189
211
  architect: {
190
212
  owns: ["system boundaries, module relationships, data flow, integration risks, and API/dependency boundaries"],
191
213
  doesNotOwn: ["product priority decisions", "business acceptance signoff"],
192
- outputs: [".zsk/evidence/{scope}/{run}/architecture-review.md"],
214
+ outputs: [
215
+ ".zsk/evidence/{scope}/{run}/architecture-review.md",
216
+ ".zsk/raws/prepare/product/{topic}/roadmap.md when running preproposal",
217
+ ".zsk/evidence/preproposal/{run}/checkpoint-roadmap-review.md when running preproposal",
218
+ ],
193
219
  evidenceRequired: ["referenced files, modules, APIs, or diagrams behind architecture claims", "risk map with owner and verification hook"],
194
220
  forbiddenDecisions: ["Do not override product acceptance or source truth.", "Do not widen implementation scope without lead-integrator handoff."],
195
221
  stopCondition: "Architecture risks and boundary decisions are ready for integration or recorded as blockers.",
@@ -213,7 +239,10 @@ const ROLE_CONTRACTS = {
213
239
  "design-specialist": {
214
240
  owns: ["design assets, visual constraints, screen/state inventory, and design snapshot validation"],
215
241
  doesNotOwn: ["backend/API correctness", "final product scope acceptance"],
216
- outputs: [".zsk/evidence/{scope}/{run}/design-asset-report.md"],
242
+ outputs: [
243
+ ".zsk/evidence/{scope}/{run}/design-asset-report.md",
244
+ ".zsk/raws/prepare/design/{topic}/design-source-needs.md when running preproposal",
245
+ ],
217
246
  evidenceRequired: ["design/prototype source references", "screen/state map and missing asset list"],
218
247
  forbiddenDecisions: ["Do not infer implementation truth from design assets.", "Do not store auth state or exported private assets outside declared scope."],
219
248
  stopCondition: "Design assets are mapped or blocked with provider/auth evidence.",
@@ -221,7 +250,11 @@ const ROLE_CONTRACTS = {
221
250
  "ux-specialist": {
222
251
  owns: ["user flows, interaction constraints, usability risks, and UX source validation"],
223
252
  doesNotOwn: ["backend/API correctness", "business priority decisions"],
224
- outputs: [".zsk/evidence/{scope}/{run}/ux-source-report.md"],
253
+ outputs: [
254
+ ".zsk/evidence/{scope}/{run}/ux-source-report.md",
255
+ ".zsk/raws/prepare/ux/{topic}/ux-readiness.md when running preproposal",
256
+ ".zsk/evidence/preproposal/{run}/checkpoint-ux-review.md when running preproposal",
257
+ ],
225
258
  evidenceRequired: ["flow/source references", "usability risks and unresolved interaction questions"],
226
259
  forbiddenDecisions: ["Do not approve product scope or technical design alone.", "Do not resolve UX/product conflicts silently."],
227
260
  stopCondition: "UX facts, questions, and risks are ready for lead integration.",
@@ -237,8 +270,11 @@ const ROLE_CONTRACTS = {
237
270
  "qa-engineer": {
238
271
  owns: ["test cases, regression matrix, acceptance scenarios, Playwright/runtime evidence, and test gaps"],
239
272
  doesNotOwn: ["business signoff", "implementation design ownership"],
240
- outputs: [".zsk/evidence/{scope}/{run}/qa-evidence-report.md"],
241
- evidenceRequired: ["test command/scenario evidence", "acceptance coverage and missing-test gaps"],
273
+ outputs: [
274
+ ".zsk/evidence/{scope}/{run}/qa-evidence-report.md",
275
+ ".zsk/raws/prepare/product/{topic}/scenario-seeds.md when running preproposal",
276
+ ],
277
+ evidenceRequired: ["test command/scenario evidence", "acceptance coverage and missing-test gaps", "scenario seeds and formal-test-case deferral when running preproposal"],
242
278
  forbiddenDecisions: ["Do not treat unrun tests as passing.", "Do not accept partial snapshots as complete evidence."],
243
279
  stopCondition: "Coverage status is pass/fail/blocked with concrete evidence and residual risk.",
244
280
  },
@@ -432,7 +468,7 @@ function seedFromRolePool(role, entries, overrides = {}) {
432
468
  writeScope: unique([...(role.writeScope ?? []), ...(overrides.writeScope ?? [])]),
433
469
  outputs: unique([...(role.outputs ?? []), ...(overrides.outputs ?? [])]),
434
470
  evidenceRequired: unique([...(role.evidenceRequired ?? []), ...(overrides.evidenceRequired ?? [])]),
435
- contract: role.contract,
471
+ contract: mergeContractOverrides(role.contract, overrides.contract),
436
472
  };
437
473
  }
438
474
  function roleMatchesStageOrSkill(role, stage, skill) {
@@ -461,6 +497,8 @@ function summarizeStageGate(assessment, assessmentPath, markdownPath, waiverPath
461
497
  runId: assessment.runId,
462
498
  stage: assessment.stage,
463
499
  ...(assessment.module ? { module: assessment.module } : {}),
500
+ ...(assessment.reviewTarget ? { reviewTarget: assessment.reviewTarget } : {}),
501
+ ...(assessment.reviewMode ? { reviewMode: assessment.reviewMode } : {}),
464
502
  status: assessment.status,
465
503
  decision: assessment.decision,
466
504
  score: assessment.score,
@@ -490,6 +528,8 @@ export async function writeStaffingPlan(target, config, opts = {}) {
490
528
  const gateBundle = await writeGateAssessment(target, config, {
491
529
  stage: bundle.plan.stage,
492
530
  module: opts.module,
531
+ issue: opts.issue,
532
+ reviewTarget: bundle.plan.reviewTarget,
493
533
  threshold: opts.gateThreshold ?? gateThresholdForStage(config, bundle.plan.stage),
494
534
  acceptRisk: opts.acceptRisk,
495
535
  });
@@ -515,9 +555,11 @@ export function buildStaffingPlan(target, config, opts = {}, rolePool = BUILTIN_
515
555
  const stage = normalizeStage(opts.stage ?? "prepare");
516
556
  const skill = opts.skill ?? stage;
517
557
  const surface = opts.surface ?? "auto";
558
+ const reviewTarget = stage === "review" ? normalizeReviewTargetPath(target, opts.reviewTarget) : undefined;
559
+ const reviewMode = reviewModeForReviewTarget(reviewTarget);
518
560
  const timeoutPolicy = packetTimeoutPolicyFromConfig(config);
519
561
  const entries = flattenProjectSources(config.sources);
520
- const seeds = seedRoles(stage, skill, entries, rolePool);
562
+ const seeds = seedRoles(stage, skill, entries, rolePool, reviewMode);
521
563
  const orchestration = buildOrchestrationPlan(surface, stage, entries, seeds, config);
522
564
  const roles = seeds.map((seed) => buildRole(seed, stage, skill, orchestration, config));
523
565
  const dir = resolve(target, getWorkspacePath(config, "evidenceRoot"), "dispatch", runId);
@@ -542,6 +584,8 @@ export function buildStaffingPlan(target, config, opts = {}, rolePool = BUILTIN_
542
584
  stage,
543
585
  skill,
544
586
  ...(opts.module ? { module: opts.module } : {}),
587
+ ...(reviewTarget ? { reviewTarget } : {}),
588
+ ...(reviewMode ? { reviewMode } : {}),
545
589
  surface,
546
590
  orchestration,
547
591
  uncertaintyPolicy: [
@@ -616,7 +660,7 @@ function markPacketStale(packet, now) {
616
660
  blocker: "No heartbeat was recorded before the packet deadline; route this lane through leader-sequential fallback or re-emit with a new packet.",
617
661
  };
618
662
  }
619
- function seedRoles(stage, skill, entries, rolePool) {
663
+ function seedRoles(stage, skill, entries, rolePool, reviewMode) {
620
664
  const seeds = new Map();
621
665
  const poolRoles = Object.values(rolePool.roles);
622
666
  for (const role of poolRoles) {
@@ -661,6 +705,82 @@ function seedRoles(stage, skill, entries, rolePool) {
661
705
  }
662
706
  }
663
707
  }
708
+ if (stage === "preproposal" || skill === "preproposal") {
709
+ for (const roleName of PREPROPOSAL_ROLE_NAMES) {
710
+ const role = rolePool.roles[roleName];
711
+ if (!role)
712
+ continue;
713
+ addSeed(seeds, seedFromRolePool(role, [], {
714
+ activation: "required for preproposal product/roadmap/UX/readiness checkpoint coverage",
715
+ reason: role.reason || "produce and review preproposal raw resources before formal proposal",
716
+ writeScope: [
717
+ ".zsk/raws/prepare/product/**",
718
+ ".zsk/raws/prepare/ux/**",
719
+ ".zsk/raws/prepare/design/**",
720
+ ".zsk/evidence/preproposal/**",
721
+ ".zsk/raws/manifest.json",
722
+ ".zsk/raws/index.md",
723
+ ...role.writeScope,
724
+ ],
725
+ outputs: [
726
+ ".zsk/raws/prepare/product/{topic}/product-brief.md",
727
+ ".zsk/raws/prepare/product/{topic}/roadmap.md",
728
+ ".zsk/raws/prepare/ux/{topic}/ux-readiness.md",
729
+ ".zsk/raws/prepare/design/{topic}/design-source-needs.md",
730
+ ".zsk/evidence/preproposal/{run}/checkpoint-*.md",
731
+ ".zsk/evidence/preproposal/{run}/readiness-review.md",
732
+ ...role.outputs,
733
+ ],
734
+ evidenceRequired: [
735
+ "product checkpoint passes before roadmap/decomposition",
736
+ "roadmap/decomposition checkpoint passes before UX/design-readiness",
737
+ "UX/design-readiness checkpoint passes before readiness handoff",
738
+ "final readiness review passes or blocks with owner, missing input, impact, and next action",
739
+ ...role.evidenceRequired,
740
+ ],
741
+ contract: {
742
+ owns: ["preproposal lane facts, source gaps, checkpoint evidence, and readiness handoff for this role"],
743
+ doesNotOwn: ["formal module proposal/spec/design/task artifacts", "formal test cases", "implementation edits"],
744
+ forbiddenDecisions: ["Do not skip checkpoint order.", "Do not treat scenario seeds as formal post-design test cases."],
745
+ stopCondition: "Preproposal lane output is reviewable, or blockers are recorded for the checkpoint owner.",
746
+ },
747
+ }));
748
+ }
749
+ }
750
+ if (stage === "review" && reviewMode && PREPROPOSAL_REVIEW_MODES.has(reviewMode)) {
751
+ for (const roleName of PREPROPOSAL_ROLE_NAMES) {
752
+ const role = rolePool.roles[roleName];
753
+ if (!role)
754
+ continue;
755
+ addSeed(seeds, seedFromRolePool(role, [], {
756
+ activation: `required for ${reviewMode} review target checkpoint coverage`,
757
+ reason: role.reason || `review ${reviewMode} target for product, roadmap, UX, source, and readiness gaps before formal proposal`,
758
+ writeScope: [
759
+ ".zsk/evidence/review/**",
760
+ ".zsk/issues/**",
761
+ ...role.writeScope,
762
+ ],
763
+ outputs: [
764
+ ".zsk/evidence/review/{run}/target-review.md",
765
+ ".zsk/evidence/review/{run}/checkpoint-findings.md",
766
+ ...role.outputs,
767
+ ],
768
+ evidenceRequired: [
769
+ "explicit review-target path and review mode",
770
+ "product, roadmap/decomposition, UX/design-readiness, assumption, risk, source, and blocker checks where relevant",
771
+ "findings grouped by role with pass/blocker/waived result and owner",
772
+ "confirmation that missing module spec/design/tasks/smoke are not blockers for raw/preproposal target review",
773
+ ...role.evidenceRequired,
774
+ ],
775
+ contract: {
776
+ owns: ["role-specific findings for the explicit raw/preproposal review target"],
777
+ doesNotOwn: ["rewriting raw resources during review", "formal module proposal/spec/design/task production", "implementation edits"],
778
+ forbiddenDecisions: ["Do not require module spec/design/tasks/smoke for raw/preproposal target review.", "Do not silently pass missing product/UX/readiness evidence."],
779
+ stopCondition: "Target findings are reviewable, or blockers identify owner, missing input, impact, and next action.",
780
+ },
781
+ }));
782
+ }
783
+ }
664
784
  return [...seeds.values()];
665
785
  }
666
786
  function addSeed(seeds, seed) {
@@ -697,6 +817,7 @@ function buildOrchestrationPlan(surface, stage, entries, seeds, config) {
697
817
  const remoteCount = entries.filter((entry) => inferSourceOrigin(entry.source).remote).length;
698
818
  const activeSeedCount = seeds.filter((seed) => seedIsActive(seed, stage)).length;
699
819
  const stageParallelNeed = (policy.strictReview && ["review", "verify"].includes(stage)) ||
820
+ (stage === "preproposal" && activeSeedCount > 2) ||
700
821
  (["prepare", "design"].includes(stage) && activeSeedCount > 2);
701
822
  const hasIndependentLanes = lanes.size > 1 ||
702
823
  remoteCount > 0 ||
@@ -1022,6 +1143,8 @@ function renderStaffingPlanMarkdown(plan, timeoutPolicy) {
1022
1143
  `- Stage: \`${plan.stage}\``,
1023
1144
  `- Skill: \`${plan.skill}\``,
1024
1145
  ...(plan.module ? [`- Module: \`${plan.module}\``] : []),
1146
+ ...(plan.reviewTarget ? [`- Review target: \`${plan.reviewTarget}\``] : []),
1147
+ ...(plan.reviewMode ? [`- Review mode: \`${plan.reviewMode}\``] : []),
1025
1148
  `- Surface: \`${plan.surface}\``,
1026
1149
  `- Roles: ${plan.roles.length}`,
1027
1150
  `- Active emit lanes: ${plan.emitPackets.length}`,
@@ -1 +1 @@
1
- {"version":3,"file":"staffing-plan.js","sourceRoot":"","sources":["../../src/core/staffing-plan.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"staffing-plan.js","sourceRoot":"","sources":["../../src/core/staffing-plan.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,8 @@ import type { ProjectConfig } from "./config.js";
2
2
  export type GateAssessmentOptions = {
3
3
  stage: string;
4
4
  module?: string;
5
+ issue?: string;
6
+ reviewTarget?: string;
5
7
  threshold?: number;
6
8
  acceptRisk?: string;
7
9
  };
@@ -26,6 +28,8 @@ export type GateAssessment = {
26
28
  runId: string;
27
29
  stage: string;
28
30
  module?: string;
31
+ reviewTarget?: string;
32
+ reviewMode?: ReviewGateMode;
29
33
  threshold: number;
30
34
  score: number;
31
35
  status: GateStatus;
@@ -51,6 +55,10 @@ export type GateAssessmentBundle = {
51
55
  markdown: string;
52
56
  waiverMarkdown?: string;
53
57
  };
58
+ export type ReviewGateMode = "implementation" | "preproposal" | "raw-source" | "zsk-workspace" | "stage-doc" | "design-source" | "code-target" | "target-path";
54
59
  export declare function writeGateAssessment(target: string, config: ProjectConfig, opts: GateAssessmentOptions): Promise<GateAssessmentBundle>;
55
60
  export declare function gateThresholdForStage(config: ProjectConfig, stage: string): number | undefined;
56
61
  export declare function buildGateAssessment(target: string, config: ProjectConfig, opts: GateAssessmentOptions): Promise<GateAssessmentBundle>;
62
+ export declare function normalizeReviewTargetPath(target: string, value: string | undefined): string | undefined;
63
+ export declare function reviewModeForReviewTarget(reviewTarget: string | undefined): ReviewGateMode | undefined;
64
+ export declare function createGateRunId(now?: Date): string;