@captain_z/zsk 1.8.6 → 1.8.8
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 +34 -16
- package/dist/bin.js +134 -0
- package/dist/bin.js.map +1 -1
- package/dist/commands/add-flow.js +7 -1
- package/dist/commands/add-flow.js.map +1 -1
- package/dist/commands/add.js +22 -5
- package/dist/commands/add.js.map +1 -1
- package/dist/commands/dispatch.d.ts +4 -0
- package/dist/commands/dispatch.js +483 -7
- package/dist/commands/dispatch.js.map +1 -1
- package/dist/commands/doctor.js +21 -5
- package/dist/commands/doctor.js.map +1 -1
- package/dist/commands/issue.d.ts +1 -0
- package/dist/commands/issue.js +2 -2
- package/dist/commands/issue.js.map +1 -1
- package/dist/commands/prepare.js +3 -0
- package/dist/commands/prepare.js.map +1 -1
- package/dist/commands/project-init.js +14 -8
- package/dist/commands/project-init.js.map +1 -1
- package/dist/commands/work.d.ts +34 -0
- package/dist/commands/work.js +1769 -0
- package/dist/commands/work.js.map +1 -0
- package/dist/commands/workflow.d.ts +32 -0
- package/dist/commands/workflow.js +270 -0
- package/dist/commands/workflow.js.map +1 -0
- package/dist/core/anchor-drift.d.ts +79 -0
- package/dist/core/anchor-drift.js +198 -0
- package/dist/core/anchor-drift.js.map +1 -0
- package/dist/core/config.d.ts +29 -0
- package/dist/core/config.js +157 -1
- package/dist/core/config.js.map +1 -1
- package/dist/core/decoupling-eval.d.ts +53 -0
- package/dist/core/decoupling-eval.js +260 -0
- package/dist/core/decoupling-eval.js.map +1 -0
- package/dist/core/issue-publish-adapter.d.ts +50 -0
- package/dist/core/issue-publish-adapter.js +371 -0
- package/dist/core/issue-publish-adapter.js.map +1 -0
- package/dist/core/prepare-artifacts.d.ts +2 -0
- package/dist/core/prepare-artifacts.js +2 -0
- package/dist/core/prepare-artifacts.js.map +1 -1
- package/dist/core/prepare-readiness.d.ts +40 -0
- package/dist/core/prepare-readiness.js +268 -0
- package/dist/core/prepare-readiness.js.map +1 -0
- package/dist/core/prepare-sync.d.ts +2 -0
- package/dist/core/prepare-sync.js +8 -16
- package/dist/core/prepare-sync.js.map +1 -1
- package/dist/core/review-skill-policy.d.ts +74 -0
- package/dist/core/review-skill-policy.js +278 -0
- package/dist/core/review-skill-policy.js.map +1 -0
- package/dist/core/skill-classification.d.ts +13 -0
- package/dist/core/skill-classification.js +50 -0
- package/dist/core/skill-classification.js.map +1 -0
- package/dist/core/source-snapshot-adapters.d.ts +3 -0
- package/dist/core/source-snapshot-adapters.js.map +1 -1
- package/dist/core/stage-clarity-verification.js +58 -7
- package/dist/core/stage-clarity-verification.js.map +1 -1
- package/dist/core/task-decomposition.d.ts +64 -0
- package/dist/core/task-decomposition.js +325 -0
- package/dist/core/task-decomposition.js.map +1 -0
- package/dist/core/task-plan-adapter.d.ts +57 -0
- package/dist/core/task-plan-adapter.js +298 -0
- package/dist/core/task-plan-adapter.js.map +1 -0
- package/dist/core/template-registry.js +26 -7
- package/dist/core/template-registry.js.map +1 -1
- package/dist/core/validation-packet.d.ts +86 -0
- package/dist/core/validation-packet.js +313 -0
- package/dist/core/validation-packet.js.map +1 -0
- package/dist/core/work-ledger.d.ts +44 -0
- package/dist/core/work-ledger.js +88 -0
- package/dist/core/work-ledger.js.map +1 -0
- package/dist/core/work-provider-adapters.d.ts +110 -0
- package/dist/core/work-provider-adapters.js +484 -0
- package/dist/core/work-provider-adapters.js.map +1 -0
- package/dist/core/workflow-graph.d.ts +100 -0
- package/dist/core/workflow-graph.js +655 -0
- package/dist/core/workflow-graph.js.map +1 -0
- package/dist/core/workflow-orchestration-policy.d.ts +92 -0
- package/dist/core/workflow-orchestration-policy.js +215 -0
- package/dist/core/workflow-orchestration-policy.js.map +1 -0
- package/dist/core/workspace-conformance.js +55 -0
- package/dist/core/workspace-conformance.js.map +1 -1
- package/dist/core/workspace-layout.d.ts +3 -1
- package/dist/core/workspace-layout.js +4 -0
- package/dist/core/workspace-layout.js.map +1 -1
- package/package.json +2 -2
- package/schemas/zsk-config.schema.json +112 -1
- package/templates/module/frontend-module/CONTEXT.md +22 -0
- package/templates/module/frontend-module/design.md +1 -1
- package/templates/module/frontend-module/proposal.md +1 -1
- package/templates/module/frontend-module/spec.md +1 -1
- package/templates/module/frontend-module/tasks.md +14 -1
- package/templates/project-init/.zsk/CONTEXT.md +35 -0
- package/templates/project-init/.zsk/README.md +94 -10
- package/templates/project-init/.zsk/config.yaml +2 -0
- package/templates/project-init/.zsk/docs/CONFIG-SCHEMA.md +13 -1
- package/templates/project-init/.zsk/docs/PROJECT-CONFIG.md +25 -7
- package/templates/project-init/.zsk/docs/SYSTEM-SPEC.md +1 -0
- package/templates/project-init/.zsk/team.yaml +218 -0
- package/templates/project-init/.zsk/work.yaml +75 -0
- package/templates/project-init/.zsk/evidence/README.md +0 -21
- package/templates/project-init/.zsk/evidence/prepare/README.md +0 -22
- package/templates/project-init/.zsk/issues/README.md +0 -10
- package/templates/project-init/.zsk/templates/module/README.md +0 -13
- package/templates/project-init/.zsk/templates/module/design.md +0 -22
- package/templates/project-init/.zsk/templates/module/module.yaml +0 -15
- package/templates/project-init/.zsk/templates/module/proposal.md +0 -20
- package/templates/project-init/.zsk/templates/module/spec.md +0 -22
- package/templates/project-init/.zsk/templates/module/tasks.md +0 -16
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workspace-layout.js","sourceRoot":"","sources":["../../src/core/workspace-layout.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEtD,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,CAAC;AAE1C,MAAM,CAAC,MAAM,uBAAuB,GAAG;IACrC,IAAI,EAAE,WAAW;IACjB,OAAO,EAAE,cAAc;IACvB,IAAI,EAAE,WAAW;IACjB,SAAS,EAAE,gBAAgB;IAC3B,MAAM,EAAE,aAAa;IACrB,QAAQ,EAAE,eAAe;IACzB,UAAU,EAAE,iBAAiB;
|
|
1
|
+
{"version":3,"file":"workspace-layout.js","sourceRoot":"","sources":["../../src/core/workspace-layout.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@captain_z/zsk",
|
|
3
|
-
"version": "1.8.
|
|
3
|
+
"version": "1.8.8",
|
|
4
4
|
"description": "ZNorth Standard Kit — CLI installer for zsk skill bundles (npx @captain_z/zsk add)",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"type": "module",
|
|
@@ -20,7 +20,7 @@
|
|
|
20
20
|
"commander": "^12.1.0",
|
|
21
21
|
"picocolors": "^1.1.1",
|
|
22
22
|
"yaml": "^2.7.0",
|
|
23
|
-
"@captain_z/zsk-skills": "1.8.
|
|
23
|
+
"@captain_z/zsk-skills": "1.8.8"
|
|
24
24
|
},
|
|
25
25
|
"devDependencies": {
|
|
26
26
|
"@types/node": "^22.10.0",
|
|
@@ -71,7 +71,7 @@
|
|
|
71
71
|
"minLength": 1
|
|
72
72
|
},
|
|
73
73
|
"workflow": {
|
|
74
|
-
"description": "Optional explicit workflow profile
|
|
74
|
+
"description": "Optional explicit workflow strategy. Keep minimal configs to profile only; expand strategy, stageSelection, capabilities, and qualityGates only when project governance needs it.",
|
|
75
75
|
"type": "object",
|
|
76
76
|
"additionalProperties": false,
|
|
77
77
|
"properties": {
|
|
@@ -79,6 +79,111 @@
|
|
|
79
79
|
"type": "string",
|
|
80
80
|
"minLength": 1
|
|
81
81
|
},
|
|
82
|
+
"strategy": {
|
|
83
|
+
"description": "Workflow graph selection strategy. The default profile strategy is adaptive.",
|
|
84
|
+
"type": "string",
|
|
85
|
+
"minLength": 1
|
|
86
|
+
},
|
|
87
|
+
"stageSelection": {
|
|
88
|
+
"description": "Project-level overrides for AI-decided stage graph selection.",
|
|
89
|
+
"type": "object",
|
|
90
|
+
"additionalProperties": false,
|
|
91
|
+
"properties": {
|
|
92
|
+
"mode": {
|
|
93
|
+
"type": "string",
|
|
94
|
+
"minLength": 1
|
|
95
|
+
},
|
|
96
|
+
"allowCustomStages": {
|
|
97
|
+
"type": "boolean"
|
|
98
|
+
},
|
|
99
|
+
"preferMinimalStages": {
|
|
100
|
+
"type": "boolean"
|
|
101
|
+
},
|
|
102
|
+
"requireStageContract": {
|
|
103
|
+
"type": "boolean"
|
|
104
|
+
},
|
|
105
|
+
"preferEvidenceStages": {
|
|
106
|
+
"type": "boolean"
|
|
107
|
+
},
|
|
108
|
+
"metadata": {
|
|
109
|
+
"$ref": "#/$defs/metadata"
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
},
|
|
113
|
+
"workflowGraph": {
|
|
114
|
+
"description": "Runtime workflow graph output and contract requirements.",
|
|
115
|
+
"type": "object",
|
|
116
|
+
"additionalProperties": false,
|
|
117
|
+
"properties": {
|
|
118
|
+
"output": {
|
|
119
|
+
"type": "string",
|
|
120
|
+
"minLength": 1
|
|
121
|
+
},
|
|
122
|
+
"requiresReason": {
|
|
123
|
+
"type": "boolean"
|
|
124
|
+
},
|
|
125
|
+
"requiresInputs": {
|
|
126
|
+
"type": "boolean"
|
|
127
|
+
},
|
|
128
|
+
"requiresOutputs": {
|
|
129
|
+
"type": "boolean"
|
|
130
|
+
},
|
|
131
|
+
"requiresQualityGate": {
|
|
132
|
+
"type": "boolean"
|
|
133
|
+
},
|
|
134
|
+
"failureReturnsTo": {
|
|
135
|
+
"type": "string",
|
|
136
|
+
"minLength": 1
|
|
137
|
+
},
|
|
138
|
+
"metadata": {
|
|
139
|
+
"$ref": "#/$defs/metadata"
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
},
|
|
143
|
+
"capabilities": {
|
|
144
|
+
"description": "Named capability defaults enabled by the profile or project.",
|
|
145
|
+
"type": "object",
|
|
146
|
+
"additionalProperties": false,
|
|
147
|
+
"properties": {
|
|
148
|
+
"enabled": {
|
|
149
|
+
"type": "array",
|
|
150
|
+
"items": {
|
|
151
|
+
"type": "string",
|
|
152
|
+
"minLength": 1
|
|
153
|
+
},
|
|
154
|
+
"uniqueItems": true
|
|
155
|
+
},
|
|
156
|
+
"metadata": {
|
|
157
|
+
"$ref": "#/$defs/metadata"
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
},
|
|
161
|
+
"qualityGates": {
|
|
162
|
+
"description": "Quality gates required or allowed by the workflow strategy.",
|
|
163
|
+
"type": "object",
|
|
164
|
+
"additionalProperties": false,
|
|
165
|
+
"properties": {
|
|
166
|
+
"required": {
|
|
167
|
+
"type": "array",
|
|
168
|
+
"items": {
|
|
169
|
+
"type": "string",
|
|
170
|
+
"minLength": 1
|
|
171
|
+
},
|
|
172
|
+
"uniqueItems": true
|
|
173
|
+
},
|
|
174
|
+
"optional": {
|
|
175
|
+
"type": "array",
|
|
176
|
+
"items": {
|
|
177
|
+
"type": "string",
|
|
178
|
+
"minLength": 1
|
|
179
|
+
},
|
|
180
|
+
"uniqueItems": true
|
|
181
|
+
},
|
|
182
|
+
"metadata": {
|
|
183
|
+
"$ref": "#/$defs/metadata"
|
|
184
|
+
}
|
|
185
|
+
}
|
|
186
|
+
},
|
|
82
187
|
"metadata": {
|
|
83
188
|
"$ref": "#/$defs/metadata"
|
|
84
189
|
}
|
|
@@ -96,6 +201,12 @@
|
|
|
96
201
|
"roles": {
|
|
97
202
|
"$ref": "#/$defs/pathRef"
|
|
98
203
|
},
|
|
204
|
+
"team": {
|
|
205
|
+
"$ref": "#/$defs/pathRef"
|
|
206
|
+
},
|
|
207
|
+
"work": {
|
|
208
|
+
"$ref": "#/$defs/pathRef"
|
|
209
|
+
},
|
|
99
210
|
"workflow": {
|
|
100
211
|
"$ref": "#/$defs/pathRef"
|
|
101
212
|
},
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
# Module Context
|
|
2
|
+
|
|
3
|
+
This is the module-local Context Record for `__MODULE_NAME__`.
|
|
4
|
+
Use it for module-specific terminology, naming decisions, decomposition
|
|
5
|
+
rationale, accepted clarifications, and rejected framings that should stay
|
|
6
|
+
scoped to this module.
|
|
7
|
+
|
|
8
|
+
## Accepted Terms
|
|
9
|
+
|
|
10
|
+
- _No module-local terms recorded yet._
|
|
11
|
+
|
|
12
|
+
## Rejected Or Ambiguous Framings
|
|
13
|
+
|
|
14
|
+
- _No rejected or ambiguous framings recorded yet._
|
|
15
|
+
|
|
16
|
+
## Recording Rules
|
|
17
|
+
|
|
18
|
+
- Module-local terms belong in this file.
|
|
19
|
+
- Project-wide or cross-module terms belong in `.zsk/CONTEXT.md`.
|
|
20
|
+
- Reusable ZSK core terms belong in the source repo `CONTEXT.md`.
|
|
21
|
+
- Runtime evidence, command output, raw source payloads, and temporary notes do
|
|
22
|
+
not belong in a Context Record.
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
| `.zsk/docs/PROJECT-CONFIG.md` | | | TODO |
|
|
8
8
|
| `.zsk/docs/SYSTEM-SPEC.md` | | | TODO |
|
|
9
9
|
|
|
10
|
-
Do not approve this design until project-level path boundaries, evidence routing, issue routing, source priority,
|
|
10
|
+
Do not approve this design until project-level path boundaries, evidence routing, issue routing, source priority, stage-document, and path-privacy rules are mapped to implementation surfaces or recorded as blockers. Use repo-relative or `.zsk/...` paths; do not copy personal absolute paths from raw sources into this document.
|
|
11
11
|
|
|
12
12
|
## Implementation Map
|
|
13
13
|
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
| `.zsk/docs/PROJECT-CONFIG.md` | | | TODO |
|
|
8
8
|
| `.zsk/docs/SYSTEM-SPEC.md` | | | TODO |
|
|
9
9
|
|
|
10
|
-
Do not draft or pass this proposal until project-level path, source-priority, evidence, issue-routing,
|
|
10
|
+
Do not draft or pass this proposal until project-level path, source-priority, evidence, issue-routing, stage-document, and path-privacy rules from both files are reflected here or explicitly blocked. Use repo-relative or `.zsk/...` paths; do not copy personal absolute paths from raw sources into this document.
|
|
11
11
|
|
|
12
12
|
## Problem
|
|
13
13
|
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
| `.zsk/docs/PROJECT-CONFIG.md` | | | TODO |
|
|
8
8
|
| `.zsk/docs/SYSTEM-SPEC.md` | | | TODO |
|
|
9
9
|
|
|
10
|
-
Do not freeze this spec until source-priority, conflict-routing, evidence,
|
|
10
|
+
Do not freeze this spec until source-priority, conflict-routing, evidence, stage-document, and path-privacy rules from both project files are reflected in requirements, scenarios, and acceptance criteria. Use repo-relative or `.zsk/...` paths; do not copy personal absolute paths from raw sources into this document.
|
|
11
11
|
|
|
12
12
|
## Behavior Contract
|
|
13
13
|
|
|
@@ -7,18 +7,30 @@
|
|
|
7
7
|
| `.zsk/docs/PROJECT-CONFIG.md` | | | TODO |
|
|
8
8
|
| `.zsk/docs/SYSTEM-SPEC.md` | | | TODO |
|
|
9
9
|
|
|
10
|
-
Do not start coding until path boundaries, evidence routing, issue routing, validation commands,
|
|
10
|
+
Do not start coding until path boundaries, evidence routing, issue routing, validation commands, source-priority, and path-privacy rules from both project files are reflected in the task list or recorded as blockers. Use repo-relative or `.zsk/...` paths; do not copy personal absolute paths from raw sources into this document.
|
|
11
|
+
|
|
12
|
+
After task groups are stable, run `zsk work emit-tasks -m __MODULE_ID__ --stage task --dry-run` and fix blocked items before appending `.zsk/work.jsonl` parent/child work item and link events with `zsk work emit-tasks -m __MODULE_ID__ --stage task`.
|
|
11
13
|
|
|
12
14
|
## Task Todo List
|
|
13
15
|
|
|
14
16
|
- [ ] 1. <task group: deliverable outcome>
|
|
17
|
+
- Work item id: TASK-0001
|
|
15
18
|
- Owner:
|
|
16
19
|
- Depends on:
|
|
17
20
|
- Scope / files:
|
|
18
21
|
- Linked FR/AC:
|
|
19
22
|
- Evidence hook:
|
|
20
23
|
- Stop condition:
|
|
24
|
+
- Status marker:
|
|
25
|
+
<!-- zsk-task-status:start TASK-0001 -->
|
|
26
|
+
- status: draft
|
|
27
|
+
- provider:
|
|
28
|
+
- provider_status:
|
|
29
|
+
- remote_id:
|
|
30
|
+
- updated_at:
|
|
31
|
+
<!-- zsk-task-status:end TASK-0001 -->
|
|
21
32
|
- [ ] 1.1 <subtask: executable step>
|
|
33
|
+
- Work item id: TASK-0001-1-1
|
|
22
34
|
- Owner:
|
|
23
35
|
- Output:
|
|
24
36
|
- Evidence:
|
|
@@ -63,6 +75,7 @@ Rules:
|
|
|
63
75
|
|
|
64
76
|
- Use a Kiro-style checkbox hierarchy: `- [ ] 1. <task group>` with indented `- [ ] 1.1 <subtask>` children.
|
|
65
77
|
- Every task and subtask must have owner, dependency, output, evidence hook, and stop condition.
|
|
78
|
+
- Every provider-syncable task group must keep a stable `Work item id` and `zsk-task-status` marker so `zsk work emit-tasks` can append generic `work.item.upserted` events. Provider-syncable subtasks may declare a `Work item id`; otherwise the CLI derives a stable child id and emits a parent-child link event.
|
|
66
79
|
- Every design decision/ADR must map to task groups, subtasks, and evidence or an explicit blocker.
|
|
67
80
|
- Every triggered control row must map to implementation, test/scenario, docs/issue, and evidence tasks.
|
|
68
81
|
- Create Playwright skeletons under `__PLAYWRIGHT_SPECS__` before demo.
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
# Project Context
|
|
2
|
+
|
|
3
|
+
This is the canonical project-wide Context Record for durable ZSK language in
|
|
4
|
+
an initialized project. Use it for terminology, naming decisions,
|
|
5
|
+
decomposition rationale, accepted clarifications, and rejected framings that
|
|
6
|
+
apply across modules.
|
|
7
|
+
|
|
8
|
+
## Accepted Terms
|
|
9
|
+
|
|
10
|
+
- `Project Context`: the canonical `.zsk/CONTEXT.md` record for repository-wide
|
|
11
|
+
terminology and decisions.
|
|
12
|
+
- `Module Context`: `.zsk/modules/<module>/CONTEXT.md`, used for module-local
|
|
13
|
+
terminology that should not be redefined at the project root.
|
|
14
|
+
- `Legacy Context Mirror`: `.zsk/docs/CONTEXT.md`, deprecated compatibility
|
|
15
|
+
output only; do not treat it as the canonical project record.
|
|
16
|
+
- `Talent Pool`: the project-local set of roles, agents, and squads declared in
|
|
17
|
+
`.zsk/team.yaml`.
|
|
18
|
+
- `Work Management Layer`: provider-agnostic work events, assignments, and
|
|
19
|
+
status sync behind adapters.
|
|
20
|
+
- `Context Record Hierarchy`: module-local terms flow into project-wide terms,
|
|
21
|
+
which flow into reusable ZSK core terms in the source repo `CONTEXT.md`.
|
|
22
|
+
|
|
23
|
+
## Rejected Or Ambiguous Framings
|
|
24
|
+
|
|
25
|
+
- `Project context` is not `.zsk/docs/CONTEXT.md`.
|
|
26
|
+
- Module-local terms should not be promoted to the project root unless they are
|
|
27
|
+
reusable across modules.
|
|
28
|
+
|
|
29
|
+
## Recording Rules
|
|
30
|
+
|
|
31
|
+
- Module-local terms belong in `.zsk/modules/<module>/CONTEXT.md`.
|
|
32
|
+
- Project-wide or cross-module terms belong in this file.
|
|
33
|
+
- Reusable ZSK core terms belong in the source repo `CONTEXT.md`.
|
|
34
|
+
- Runtime evidence, command output, raw source payloads, and temporary notes do
|
|
35
|
+
not belong in a Context Record.
|
|
@@ -13,10 +13,14 @@ declares a durable entry source and the sync run produces a snapshot.
|
|
|
13
13
|
| --- | --- | --- | --- |
|
|
14
14
|
| `.zsk/config.yaml` | config | init/user | commit |
|
|
15
15
|
| `.zsk/roles.yaml` | staffing policy | init/user | commit |
|
|
16
|
+
| `.zsk/team.yaml` | talent pool | init/user | commit |
|
|
17
|
+
| `.zsk/work.yaml` | work provider mapping | init/user | commit |
|
|
18
|
+
| `.zsk/work.jsonl` | work event ledger | task/issue/dispatch/work sync/status import | commit when created |
|
|
19
|
+
| `.zsk/CONTEXT.md` | project context | init/user/stages | commit |
|
|
16
20
|
| `.zsk/docs/**` | governance docs | init/user | commit |
|
|
17
|
-
| `.zsk/templates
|
|
21
|
+
| `.zsk/templates/config.examples.yaml` | config examples | init | commit |
|
|
22
|
+
| `.zsk/templates/issue-card.md` | issue template | init | commit |
|
|
18
23
|
| `.zsk/raws/README.md` | resource snapshot contract | init | commit |
|
|
19
|
-
| `.zsk/evidence/prepare/README.md` | prepare collaboration contract | init | commit |
|
|
20
24
|
| `.zsk/evidence/prepare/<run>/config-draft.yaml` | discovered source draft | prepare draft/plan/run | commit for review |
|
|
21
25
|
| `.zsk/evidence/prepare/<run>/source-promotion-suggestions.md` | human review queue | prepare draft/plan/run | commit for review |
|
|
22
26
|
| `.zsk/raws/**/snapshot.md` | generated summary | prepare sync | commit |
|
|
@@ -26,32 +30,112 @@ declares a durable entry source and the sync run produces a snapshot.
|
|
|
26
30
|
| `.zsk/modules/index.md` | module registry view | init/module add | commit |
|
|
27
31
|
| `.zsk/modules/<module>/**` | module work surface | module add/user | commit |
|
|
28
32
|
| `.zsk/modules/<module>/_issues/**` | module task cards | prepare sync/user | commit |
|
|
29
|
-
| `.zsk/issues/**` | global/cross-module issues |
|
|
33
|
+
| `.zsk/issues/**` | global/cross-module issues | issue/prepare/user | commit |
|
|
30
34
|
| `.zsk/evidence/prepare/sync-report.md` | prepare report | prepare sync | commit |
|
|
35
|
+
| `.zsk/plans/<run>/workflow-graph.{json,yaml,md}` | workflow graph | workflow plan/zskplan | commit |
|
|
36
|
+
| `.zsk/plans/current-workflow-graph.json` | workflow resume pointer | workflow plan/advance/mark | commit |
|
|
31
37
|
| `.zsk/runs/**` | runtime state | commands | ignore |
|
|
32
38
|
| `.zsk/state/**` | runtime state | commands | ignore |
|
|
33
39
|
| `.zsk/tmp/**` | temporary files | commands | ignore |
|
|
34
40
|
|
|
41
|
+
## Lazy Roots
|
|
42
|
+
|
|
43
|
+
`zsk init` does not create these roots. They appear only when an owning command
|
|
44
|
+
has real content to write:
|
|
45
|
+
|
|
46
|
+
| Path | Created When |
|
|
47
|
+
| --- | --- |
|
|
48
|
+
| `.zsk/issues/**` | A shared/global issue is created. |
|
|
49
|
+
| `.zsk/evidence/**` | Prepare, demo, verify, or review writes shared evidence. |
|
|
50
|
+
| `.zsk/resources/**` | A future registry/stage-pack layer earns a separate root. Current resource snapshots use `.zsk/raws/**`. |
|
|
51
|
+
| `.zsk/plans/**` | `zsk workflow plan` or `zskplan` writes a workflow graph or plan artifact. |
|
|
52
|
+
| `.zsk/playwright/**` | Shared Playwright config/auth/helper assets are required. Prefer module `_playwright` first. |
|
|
53
|
+
|
|
35
54
|
## Rules
|
|
36
55
|
|
|
37
56
|
- Raw snapshots live under `.zsk/raws/**`.
|
|
57
|
+
- Project-wide terminology, naming decisions, and cross-module decomposition
|
|
58
|
+
rationale live in `.zsk/CONTEXT.md`.
|
|
38
59
|
- Module work lives under `.zsk/modules/**`.
|
|
60
|
+
- Module-local terminology and decomposition rationale live in
|
|
61
|
+
`.zsk/modules/<module>/CONTEXT.md`.
|
|
39
62
|
- Module-local issues live under `.zsk/modules/<module>/_issues/**`.
|
|
40
|
-
- Global or cross-module blockers live under `.zsk/issues
|
|
63
|
+
- Global or cross-module blockers live under `.zsk/issues/**` only after a
|
|
64
|
+
scope decision proves they are not module-local.
|
|
65
|
+
- Module templates are owned by `zsk module init`; do not maintain duplicate
|
|
66
|
+
copies under `.zsk/templates/module/**`.
|
|
41
67
|
- Provider connections are declared once in `.zsk/config.yaml`.
|
|
42
68
|
- `.zsk/config.yaml` should keep durable entry sources, not every child page,
|
|
43
69
|
node, issue, or file found during prepare.
|
|
44
70
|
- Discovered child sources go through `config-draft.yaml` and
|
|
45
71
|
`source-promotion-suggestions.md`; only human-approved entries are promoted
|
|
46
72
|
back into `.zsk/config.yaml`.
|
|
47
|
-
-
|
|
48
|
-
|
|
73
|
+
- Talent pool policy lives in `.zsk/team.yaml`; roles, agents, and squads stay
|
|
74
|
+
provider-agnostic while provider-specific ids live under adapter references.
|
|
75
|
+
Dispatch maps staffing-plan roles to team roles through
|
|
76
|
+
`assignmentPolicy.dispatch.roleMappings`, then uses
|
|
77
|
+
`assignmentPolicy.dispatch.stageRoutes`, role `subagentTypes`, agent
|
|
78
|
+
`stages/modules/subagentTypes/capacity/priority`, and optional
|
|
79
|
+
`providerCatalogs` to select the most suitable expert. Project-specific
|
|
80
|
+
experts belong in `.zsk/team.yaml` or a configured provider catalog rather
|
|
81
|
+
than CLI code.
|
|
82
|
+
- Work provider mapping lives in `.zsk/work.yaml`; Multica is a default adapter
|
|
83
|
+
reference, but `.zsk/work.jsonl` events stay generic for other providers.
|
|
84
|
+
- `.zsk/work.jsonl` is lazy. Do not create an empty ledger; create it only when
|
|
85
|
+
a skill emits a real work event.
|
|
86
|
+
- `zsk work emit-tasks` reads module `tasks.md` Kiro-style task groups and
|
|
87
|
+
subtasks, then appends generic `work.item.upserted` and parent-child
|
|
88
|
+
`work.item.linked` events to `.zsk/work.jsonl`. Use `--dry-run` first; it
|
|
89
|
+
never calls provider APIs or CLIs.
|
|
90
|
+
- `zsk work sync --dry-run` writes a provider command plan from generic work
|
|
91
|
+
events. Assignment commands preserve role/stage/subagent/selection evidence
|
|
92
|
+
under command `metadata` for adapter-specific execution later. The plan is
|
|
93
|
+
reviewable evidence only; it does not call provider APIs or CLIs.
|
|
94
|
+
- `zsk work import-experts --dry-run` previews normalization of a provider
|
|
95
|
+
expert export into the generic catalog shape. Without `--dry-run`, it writes
|
|
96
|
+
a local catalog only. Dispatch auto-discovers
|
|
97
|
+
`.zsk/providers/<provider>/experts.yaml` when present, so a Multica-style
|
|
98
|
+
talent export can enrich assignment without changing the work ledger schema.
|
|
99
|
+
- `zsk workflow mark --status blocked` and blocked `zsk workflow advance`
|
|
100
|
+
decisions append generic `work.item.blocked` events. Provider updates still
|
|
101
|
+
require `zsk work sync --dry-run` review.
|
|
102
|
+
- `zsk dispatch plan --item <id> --emit-work-assignments` appends generic
|
|
103
|
+
`work.assignment.requested` events for the bound work item from the staffing
|
|
104
|
+
plan, `.zsk/team.yaml` dispatch role mappings, stage routes, role
|
|
105
|
+
`subagentTypes`, local agent pool, and optional provider expert catalog; it
|
|
106
|
+
records the selection source, score, and reasons, and does not call provider
|
|
107
|
+
APIs or CLIs.
|
|
108
|
+
- `zsk work assign --dry-run` previews a `work.assignment.requested` event and
|
|
109
|
+
provider assignment command plan from `.zsk/team.yaml` roles, agents, squads,
|
|
110
|
+
and `.zsk/work.yaml` project mapping.
|
|
111
|
+
- `zsk work assign` without `--dry-run` appends only a generic local
|
|
112
|
+
`work.assignment.requested` event to `.zsk/work.jsonl`; provider assignment
|
|
113
|
+
remains behind `zsk work sync --dry-run`.
|
|
114
|
+
- `zsk work import-status` may append `work.provider_status.imported` events
|
|
115
|
+
from provider exports. When a record explicitly links a local `issue.md`,
|
|
116
|
+
it also updates that issue status block and refreshes issue indexes. When a
|
|
117
|
+
record explicitly links a module `tasks.md`, it updates only a matching
|
|
118
|
+
`zsk-task-status` marker block. It never calls provider APIs or CLIs.
|
|
119
|
+
- Dynamic workflow state lives in `.zsk/plans/**`. Use
|
|
120
|
+
`zsk workflow plan|next|advance|mark` to create, resume, or conservatively
|
|
121
|
+
advance it from existing local evidence; do not create a
|
|
122
|
+
separate top-level runs directory for stage routing.
|
|
123
|
+
- Project-facing documents must use portable paths such as `.zsk/...`,
|
|
124
|
+
`src/...`, `$HOME/...`, or `<workspace>/...`; do not copy personal absolute
|
|
125
|
+
paths like `/Users/<name>/...`, `/home/<name>/...`, `C:\Users\<name>\...`, or
|
|
126
|
+
`/private/var/...` into proposal, spec, design, tasks, Context Records,
|
|
127
|
+
handoffs, archives, issues, or evidence summaries.
|
|
49
128
|
|
|
50
129
|
## Next Steps
|
|
51
130
|
|
|
52
131
|
1. Edit `.zsk/config.yaml`.
|
|
53
|
-
2.
|
|
54
|
-
|
|
55
|
-
|
|
132
|
+
2. Review `.zsk/team.yaml` and `.zsk/work.yaml` before syncing or assigning
|
|
133
|
+
work to any external provider.
|
|
134
|
+
3. Add modules with `zsk module init -m <module-id> --name "<Module Name>"`.
|
|
135
|
+
4. Run `zsk config check`.
|
|
136
|
+
5. Run `zsk workflow plan --goal "<goal>"` when a durable stage graph is useful.
|
|
137
|
+
6. Run `zsk workflow advance` after a stage writes decisive local gate or
|
|
138
|
+
prepare evidence.
|
|
139
|
+
7. Run `zsk prepare draft` or `zsk prepare plan` to review discovered source
|
|
56
140
|
candidates before changing `.zsk/config.yaml`.
|
|
57
|
-
|
|
141
|
+
8. Run `zsk prepare sync` when resource acquisition is intentionally allowed.
|
|
@@ -13,7 +13,7 @@ not runtime results.
|
|
|
13
13
|
| `resources` | Durable entry-source intents to prepare, such as repository roots, issue feeds, document entry pages, design entry nodes, or command/MCP outputs. |
|
|
14
14
|
| `routes` | Delivery rules from prepared resources to module or shared consumption surfaces. |
|
|
15
15
|
| `modules` | Module discovery settings and optional module registry entries. |
|
|
16
|
-
| `customize` / `staffing` | Pointers to role, workflow, provider, or gate policy files. |
|
|
16
|
+
| `customize` / `staffing` | Pointers to role, workflow, team, work-provider, or gate policy files. |
|
|
17
17
|
| `sources` | Compatibility source tree for durable grouped prepare entries. Auto-discovered children stay in draft evidence until promoted. |
|
|
18
18
|
|
|
19
19
|
## Materialization
|
|
@@ -27,9 +27,21 @@ The workspace does not pre-create resource directories.
|
|
|
27
27
|
- `routes` entries may update `.zsk/modules/<module>/_issues/**`,
|
|
28
28
|
`.zsk/modules/<module>/sources.yaml`, or other controlled artifacts.
|
|
29
29
|
- `zsk prepare sync` writes `.zsk/evidence/prepare/sync-report.md`.
|
|
30
|
+
- `.zsk/work.jsonl` is created lazily only after a skill or future work sync
|
|
31
|
+
command emits a real provider-agnostic work event.
|
|
30
32
|
- Missing provider credentials or route conflicts must be visible in the report
|
|
31
33
|
with a clear state, reason, output path, and next action.
|
|
32
34
|
|
|
35
|
+
## Work Management
|
|
36
|
+
|
|
37
|
+
`customize.team` points to `.zsk/team.yaml`, the talent-pool file for roles,
|
|
38
|
+
agents, squads, capacity hints, and assignment policy.
|
|
39
|
+
|
|
40
|
+
`customize.work` points to `.zsk/work.yaml`, the provider mapping file for work
|
|
41
|
+
items, project/module linkage, status mapping, sync policy, and adapter defaults.
|
|
42
|
+
Multica is the default provider, but events remain provider-agnostic so another
|
|
43
|
+
adapter can consume the same ledger later.
|
|
44
|
+
|
|
33
45
|
## Resource Output
|
|
34
46
|
|
|
35
47
|
Default raw output is derived from `type + id`, but a resource may override it
|
|
@@ -20,8 +20,11 @@ Use this layer to answer three questions before execution:
|
|
|
20
20
|
| --- | --- |
|
|
21
21
|
| `.zsk/config.yaml` | Machine-readable project config and path authority |
|
|
22
22
|
| `.zsk/roles.yaml` | Project staffing policy and role pool overrides |
|
|
23
|
+
| `.zsk/team.yaml` | Talent pool: roles, agents, squads, and assignment policy |
|
|
24
|
+
| `.zsk/work.yaml` | Work provider mapping, status mapping, sync policy, and adapter defaults |
|
|
25
|
+
| `.zsk/work.jsonl` | Lazy append-only Work Event Ledger, created only after a real work event |
|
|
23
26
|
| `.zsk/docs/` | Project-level docs such as this file, `SYSTEM-SPEC.md`, `CONFIG-SCHEMA.md`, and `SECURITY.md` |
|
|
24
|
-
| `.zsk/modules/{module}/` | Module `module.yaml`, `proposal.md`, `spec.md`, `design.md`, `tasks.md` |
|
|
27
|
+
| `.zsk/modules/{module}/` | Module `CONTEXT.md`, `module.yaml`, `proposal.md`, `spec.md`, `design.md`, `tasks.md` |
|
|
25
28
|
| `.zsk/raws/` | Entry-driven Resource Snapshot Library |
|
|
26
29
|
| `.zsk/evidence/prepare/{run}/config-draft.yaml` | Auto-discovered source candidate tree for review |
|
|
27
30
|
| `.zsk/evidence/prepare/{run}/source-promotion-suggestions.md` | Human review queue for promoting candidates into config |
|
|
@@ -32,17 +35,29 @@ Use this layer to answer three questions before execution:
|
|
|
32
35
|
|
|
33
36
|
Root `docs/`, `.raws/`, `.issues/`, and `.playwright/` are not default write targets. Use explicit export or migration tooling when you need project-root copies.
|
|
34
37
|
|
|
38
|
+
## Path Privacy
|
|
39
|
+
|
|
40
|
+
Stage documents, Context Records, handoffs, archives, issues, and evidence
|
|
41
|
+
summaries should use `.zsk/...`, repo-relative, `$HOME/...`, or `<workspace>/...`
|
|
42
|
+
references. Do not preserve personal home-directory absolute paths such as
|
|
43
|
+
`/Users/<name>/...`, `/home/<name>/...`, `C:\Users\<name>\...`, or
|
|
44
|
+
`/private/var/...` in reusable project docs. If raw acquisition metadata needs
|
|
45
|
+
the original absolute path, keep it in raw/evidence metadata and provide a
|
|
46
|
+
portable alias for downstream design/spec/task docs.
|
|
47
|
+
|
|
35
48
|
## Source Priorities
|
|
36
49
|
|
|
37
50
|
1. `.zsk/config.yaml`
|
|
38
51
|
2. `.zsk/docs/SYSTEM-SPEC.md`
|
|
39
52
|
3. Project provider/entry-source/route intent in `.zsk/config.yaml`
|
|
40
|
-
4.
|
|
41
|
-
5.
|
|
42
|
-
6. `.zsk/
|
|
43
|
-
7. `.zsk/modules/{module}/
|
|
44
|
-
8. `.zsk/modules/{module}/
|
|
45
|
-
|
|
53
|
+
4. Talent and work-provider policy in `.zsk/team.yaml` and `.zsk/work.yaml`
|
|
54
|
+
5. Prepare drafts and promotion suggestions under `.zsk/evidence/prepare/{run}/`
|
|
55
|
+
6. Materialized resource snapshots under `.zsk/raws/**`
|
|
56
|
+
7. `.zsk/modules/{module}/CONTEXT.md`
|
|
57
|
+
8. `.zsk/modules/{module}/module.yaml`
|
|
58
|
+
8. `.zsk/modules/{module}/spec.md`
|
|
59
|
+
9. `.zsk/modules/{module}/design.md`
|
|
60
|
+
10. Runtime evidence under module `_evidence` / `_playwright` or shared `.zsk/evidence` / `.zsk/playwright`
|
|
46
61
|
|
|
47
62
|
When sources conflict, record the conflict under the module `_issues` directory, or shared `.zsk/issues` only for cross-module/global issues, and update the affected module docs with a Documentation Feedback note or an explicit no-update rationale.
|
|
48
63
|
|
|
@@ -118,6 +133,9 @@ narrower page/frame split is justified in the raw artifact.
|
|
|
118
133
|
## Maintenance Checklist
|
|
119
134
|
|
|
120
135
|
- Update `.zsk/config.yaml` when providers, durable entry sources, routes, modules, paths, or tools change.
|
|
136
|
+
- Update `.zsk/team.yaml` when role, agent, squad, capacity, or assignment policy changes.
|
|
137
|
+
- Update `.zsk/work.yaml` when provider, project/module mapping, status mapping, or sync policy changes.
|
|
138
|
+
- Do not create `.zsk/work.jsonl` manually; skills or future work sync commands create it when they emit real work events.
|
|
121
139
|
- Review `config-draft.yaml` and `source-promotion-suggestions.md` before
|
|
122
140
|
promoting discovered child resources into `.zsk/config.yaml`.
|
|
123
141
|
- Keep project-wide reusable rules in `.zsk/docs/SYSTEM-SPEC.md`.
|
|
@@ -93,6 +93,7 @@ artifact and any reusable `CONTEXT.md` term, then stop after minimal validation.
|
|
|
93
93
|
| FR, NFR, acceptance criteria, scenarios, edge cases | `spec` | Creates observable behavior contracts from proposal/source evidence. Missing quality targets remain `未指定` instead of invented. |
|
|
94
94
|
| ADR / decision records for architecture, interfaces, state/data flow, storage, migration, dependency, rollback, integration, security, permission, privacy, or public API decisions | `design` | Required only for design-significant decisions. N/A must cite why no such decision exists. |
|
|
95
95
|
| Proposal/spec/design/ADR alignment and executable work | `task` | Preserves FR/AC/NFR/ADR traceability into task groups, subtasks, evidence, and stop conditions. |
|
|
96
|
+
| Provider-agnostic work items, assignment requests, provider comments, and status sync | `task`, `issue`, `dispatch`, `coding`, `verify` | `task` may create or update work items but must not auto-start provider agents. Dispatch owns assignment requests. Verify owns final verified/done claims. |
|
|
96
97
|
|
|
97
98
|
Downstream stages consume reviewed upstream revisions. They may report gaps, but
|
|
98
99
|
must not silently rewrite another stage's source of truth.
|