project-tiny-context-harness 0.7.5 → 0.7.7

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 (38) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +353 -345
  3. package/assets/README.md +537 -529
  4. package/assets/README.zh-CN.md +301 -293
  5. package/assets/agents/.gitkeep +1 -1
  6. package/assets/agents/AGENTS_CORE.md +52 -52
  7. package/assets/context_templates/architecture.md +33 -33
  8. package/assets/context_templates/area.md +39 -39
  9. package/assets/context_templates/context.toml +30 -30
  10. package/assets/context_templates/deployment.md +35 -35
  11. package/assets/context_templates/global.md +51 -51
  12. package/assets/context_templates/product-surface-contract.md +58 -58
  13. package/assets/context_templates/verification.md +32 -32
  14. package/assets/github/.gitkeep +1 -1
  15. package/assets/github/harness.yml +41 -41
  16. package/assets/make/.gitkeep +1 -1
  17. package/assets/make/ty-context.mk +48 -48
  18. package/assets/skills/context_development_engineer/SKILL.md +89 -89
  19. package/assets/skills/context_full_project_export/SKILL.md +70 -70
  20. package/assets/skills/context_harness_upgrade/SKILL.md +60 -60
  21. package/assets/skills/context_product_plan/SKILL.md +74 -74
  22. package/assets/skills/context_surface_contract/SKILL.md +165 -165
  23. package/assets/skills/context_uiux_design/SKILL.md +92 -92
  24. package/assets/skills/design-resource-authoring/SKILL.md +68 -0
  25. package/assets/skills/design-resource-authoring/references/downstream-handoff.md +138 -0
  26. package/assets/skills/design-resource-authoring/references/open-design-provider.md +112 -0
  27. package/assets/skills/design-resource-authoring/references/resource-selection.md +166 -0
  28. package/assets/skills/long-task-workflow/SKILL.md +82 -81
  29. package/assets/skills/long-task-workflow/agents/openai.yaml +4 -4
  30. package/assets/skills/long-task-workflow/references/authority-lifecycle.md +56 -56
  31. package/assets/skills/long-task-workflow/references/contract-authoring.md +88 -88
  32. package/assets/skills/long-task-workflow/references/evidence-design.md +69 -69
  33. package/assets/skills/normal-long-task/SKILL.md +12 -12
  34. package/assets/skills/source-plan-authoring/SKILL.md +291 -291
  35. package/dist/lib/profiles.js +1 -0
  36. package/migrations/README.md +15 -15
  37. package/package.json +1 -1
  38. package/source-mappings.yaml +25 -25
@@ -1,37 +1,37 @@
1
- ---
1
+ ---
2
2
  name: source-plan-authoring
3
3
  description: Use only when the user explicitly asks for 初版方案、源方案、方案源稿、Source Plan, initial delivery plan, source draft, or asks to synthesize, refine or audit later implementation or Contract-authoring Source from one draft or mixed inputs such as notes, product/technical documents, screenshots, diagrams or other attachments. Produce one self-contained Markdown Source Plan with complete input coverage, traceable direct/derived/delegated content, control-level UI detail when applicable, stable semantic keys, acceptance scenarios, non-goals, risks and unresolved decisions. Do not trigger for ordinary product discussion, routine coding, implementation work, Delivery Contract authoring or long-task execution.
4
- ---
5
-
6
- # Source Plan Authoring
7
-
8
- ## Objective
9
-
4
+ ---
5
+
6
+ # Source Plan Authoring
7
+
8
+ ## Objective
9
+
10
10
  Produce one high-fidelity, self-contained Markdown Source Plan from either a nearly finished plan or a sparse brief plus mixed supplied artifacts. Preserve the user's real intent, expand it to the detail needed by later `long-task-workflow` Contract authoring and make every added inference or delegated choice traceable.
11
11
 
12
12
  Record every product, technical and acceptance meaning that later work must not omit, change or silently add. For an in-scope user interface, reach page, region, control, state and feedback granularity. Prefer semantic completeness over template completeness.
13
-
14
- ## Boundaries
15
-
16
- - Produce or revise one Markdown Source Plan. If it does not fit in one response, continue the same document instead of inventing extra Outcomes or plans.
13
+
14
+ ## Boundaries
15
+
16
+ - Produce or revise one Markdown Source Plan. If it does not fit in one response, continue the same document instead of inventing extra Outcomes or plans.
17
17
  - Preserve the original meaning and every material qualifier from the user's discussion, research and every supplied artifact.
18
18
  - Do not require the user to pre-normalize inputs or restate content already available in an attachment.
19
- - Do not update `project_context/**` or treat the Source Plan as durable project Context.
20
- - Do not independently turn current repository implementation into product intent. If supplied repository or Context evidence is relevant, cite it and distinguish durable constraints from incidental code shape.
19
+ - Do not update `project_context/**` or treat the Source Plan as durable project Context.
20
+ - Do not independently turn current repository implementation into product intent. If supplied repository or Context evidence is relevant, cite it and distinguish durable constraints from incidental code shape.
21
21
  - Do not bind owners, files, runners, verification inputs, proof surfaces or Assertion observations for a real repository. Later Contract authoring owns those bindings.
22
22
  - Do not generate Delivery Contract YAML, execute implementation, run Long-Task commands or declare work complete.
23
23
  - Keep plan meaning separate from action authorization. A delegated recommendation may define the intended product or technical default, but payment, contracting, production release, destructive production mutation, a real permission grant, sensitive-data transmission or required legal/security/human approval remains an external confirmation.
24
24
  - Do not make this recommended structure a mandatory input protocol for later work.
25
-
26
- ## Relationship To Other Skills
27
-
25
+
26
+ ## Relationship To Other Skills
27
+
28
28
  - Keep `source-plan-authoring` focused on high-fidelity Source expression and traceability.
29
29
  - For material UI, preserve stable surface/control/target keys and enough independent Control meaning for later UI Authority Closure. Do not assume a coarse product flow, `DESIGN.md` configuration or inspiration reference already supplies missing visibility, availability, validation, recovery, permission or accessibility semantics.
30
- - This Skill authors Source, not a Contract Draft.
31
- - It does not replace Contract Draft authoring inside `long-task-workflow`.
30
+ - This Skill authors Source, not a Contract Draft.
31
+ - It does not replace Contract Draft authoring inside `long-task-workflow`.
32
32
  - Its recommended structure is optional input guidance.
33
33
  - Use `context_product_plan` separately when a Tiny Context project needs product decisions classified and written as durable facts in `project_context/**`. This Skill does not replace or invoke that responsibility.
34
- - A dedicated external Product Design capability may consume the Source Plan to create low/high-fidelity targets, visual candidates, a Figma handoff or an isolated interaction prototype. This Skill neither invokes that capability nor generates design resources.
34
+ - `design-resource-authoring` may consume the same raw inputs independently or consume an existing Source Plan to commission low/high-fidelity targets, visual candidates, a conditional Figma handoff or an isolated interaction prototype. Neither Skill invokes the other. When explicitly requested after design selection, this Skill may instead consume both a separately revised initial proposal and selected immutable design resources as ordinary inputs; it still does not generate or select those resources.
35
35
  - Use `long-task-workflow` later to read ordinary Source or a Source Plan with real Context/repository evidence, author one Delivery Contract, bind owners/paths/runners/proof, implement and run the Live Final Gate.
36
36
 
37
37
  ## Intake Modes And Source Coverage
@@ -63,9 +63,9 @@ Before comparative research or a material product, technical, architecture or pr
63
63
  5. Once the preference envelope is clear, decide whether research is needed and how much. When a choice depends on current external capabilities, pricing, quotas, licensing, compatibility, regional availability, security posture or support, use current authoritative or primary sources and add them to the Input Inventory with their scope and retrieval date.
64
64
 
65
65
  Preference clarification determines what outcome to optimize. It does not approve a purchase, contract, deployment, permission grant, data transfer or other real-world action.
66
-
67
- ## Authoring Workflow
68
-
66
+
67
+ ## Authoring Workflow
68
+
69
69
  1. Build the complete Input Inventory and extract every material statement, including constraints, exceptions, examples that change meaning and already-decided controls or recovery behavior.
70
70
  2. Preserve direct requirements before reorganizing them. Never compress several distinct requirements into a broad capability statement that loses qualifiers.
71
71
  3. Classify every material addition as `direct`, `derived`, `delegated`, evidence-backed repository/Context information, or `decision_required`.
@@ -75,24 +75,24 @@ Preference clarification determines what outcome to optimize. It does not approv
75
75
  7. Write product requirements, applicable flows/states, controls, technical obligations, implementation hints and observable acceptance without hiding new semantics between types.
76
76
  8. Trace every input to incorporated items or an explicit unused/unreadable disposition.
77
77
  9. Run the completeness check, revise the same document and end with a compact readiness summary.
78
-
79
- ## Expansion Boundary
80
-
81
- ### Direct requirements
82
-
83
- Preserve directly stated intent and qualifiers. Do not reduce a scoped or conditional requirement to a generic feature label. Retain a source reference, quoted source key or clear provenance when the inputs provide one.
84
-
85
- ### Necessary derivations
86
-
87
- Derive only what is unavoidable to make an explicit requirement complete, executable or falsifiable.
88
-
89
- For every derived item:
90
-
91
- - mark it `derived`;
92
- - identify the original Requirement or source statement under `Derived From`;
93
- - state why the derivation is necessary;
94
- - confirm that it does not change user capability, business rules or product scope.
95
-
78
+
79
+ ## Expansion Boundary
80
+
81
+ ### Direct requirements
82
+
83
+ Preserve directly stated intent and qualifiers. Do not reduce a scoped or conditional requirement to a generic feature label. Retain a source reference, quoted source key or clear provenance when the inputs provide one.
84
+
85
+ ### Necessary derivations
86
+
87
+ Derive only what is unavoidable to make an explicit requirement complete, executable or falsifiable.
88
+
89
+ For every derived item:
90
+
91
+ - mark it `derived`;
92
+ - identify the original Requirement or source statement under `Derived From`;
93
+ - state why the derivation is necessary;
94
+ - confirm that it does not change user capability, business rules or product scope.
95
+
96
96
  Do not disguise one possible product choice as a necessary derivation.
97
97
 
98
98
  ### Delegated elaboration
@@ -112,164 +112,164 @@ For every delegated item or tightly coupled group:
112
112
  For high-risk domains, prefer a conservative pre-authorization baseline when it still satisfies the stated goal: zero spend until approved, disabled production capability, least privilege, explicit opt-in, minimum justified retention, staging or POC before production, and no automated destructive behavior. Record the intended later capability separately from the gate that enables it. A conservative action gate does not substitute for an unknown preference that would change the intended product or technical choice.
113
113
 
114
114
  Delegation authorizes plan meaning only. It never authorizes payment or purchase, signature or contract acceptance, production deployment or public release, destructive mutation of production or user data, granting real permissions, transmitting sensitive data, bypassing legal/security review, or substituting a plan for required POC, field, accessibility or human validation. Declare each applicable real-world gate as an `EXT` external confirmation and continue authoring without asking for plan approval.
115
-
116
- ### Repository or Context evidence
117
-
118
- When supplied project evidence establishes an existing module boundary, state model, interface constraint, component system or verification entry, record the evidence and its source. Do not promote incidental current implementation into a product requirement.
119
-
120
- Leave real owner/path/binding/runner selection to later repository-aware Contract authoring.
121
-
115
+
116
+ ### Repository or Context evidence
117
+
118
+ When supplied project evidence establishes an existing module boundary, state model, interface constraint, component system or verification entry, record the evidence and its source. Do not promote incidental current implementation into a product requirement.
119
+
120
+ Leave real owner/path/binding/runner selection to later repository-aware Contract authoring.
121
+
122
122
  ### New product semantics
123
123
 
124
124
  Use a `DEC` item with status `decision_required` only when authoritative inputs conflict, the user explicitly reserves the choice, a material preference remains unknown after the targeted question, or no single defensible recommendation can be supported by the known preference envelope, available evidence, Context, established convention or a conservative no-effect default. Several possible options do not by themselves require a decision when the decision criteria are known: recommend one, record its delegated basis and keep any real high-risk action as `EXT`.
125
125
 
126
126
  The following choices require an explicit direct or recorded delegated basis and may require a corresponding `EXT`; they are not automatic `DEC` items when a defensible recommendation exists:
127
-
128
- - a new user capability or changed business rule;
129
- - a default, threshold, range or metric;
130
- - a permission or role;
131
- - deletion, overwrite or irreversible behavior;
132
- - an automation policy;
133
- - platform support scope;
134
- - data persistence or retention behavior;
135
- - a product recovery path after failure;
136
- - sample versus full-population coverage;
127
+
128
+ - a new user capability or changed business rule;
129
+ - a default, threshold, range or metric;
130
+ - a permission or role;
131
+ - deletion, overwrite or irreversible behavior;
132
+ - an automation policy;
133
+ - platform support scope;
134
+ - data persistence or retention behavior;
135
+ - a product recovery path after failure;
136
+ - sample versus full-population coverage;
137
137
  - a pricing, quota, budget or risk rule.
138
-
139
- ## Outcome Rules
140
-
141
- Create one or more Outcomes according to whether each observable result can be independently judged and later bound to its own Requirements and acceptance.
142
-
143
- Do not split an Outcome because of:
144
-
145
- - response or document length;
146
- - frontend/backend or other implementation layers;
147
- - file or module count;
148
- - desired parallelism;
149
- - Agent capacity;
150
- - a wish to distribute execution.
151
-
152
- Do not merge independently decidable results merely to make the document shorter.
153
-
154
- ## Stable Keys And Anchors
155
-
156
- Use stable semantic lowercase-kebab keys and explicit Markdown `id` anchors for important items.
157
-
158
- ```markdown
159
- <a id="<outcome-key>.requirement.<requirement-key>"></a>
160
-
161
- - **REQ `<requirement-key>`**
162
- ...
163
- ```
164
-
165
- Use the same pattern for controls, obligations, acceptance, decisions and other typed items. Describe meaning rather than implementation location.
166
-
167
- Key rules:
168
-
169
- - preserve a key when wording changes but meaning does not;
170
- - never renumber keys because ordering changes;
171
- - never reuse a deleted key for a different meaning;
172
- - when merging or splitting an item, record which new keys replace the old key;
173
- - avoid pure sequence keys such as `req-17`;
174
- - avoid implementation keys such as `map-hook-change` or `src-button`.
175
-
176
- ## Semantic Types
177
-
178
- Use only the types that apply.
179
-
180
- | Type | Meaning | Later use |
181
- |---|---|---|
182
- | `OUT` | Independently decidable observable result | Outcome |
183
- | `REQ` | Required product or system behavior | Requirement |
184
- | `CTRL` | Decided control task, placement or state | Control |
185
- | `OBL` | Mandatory technical obligation | Technical obligation |
186
- | `NCOMP` | Explicit result that must not be treated as completion | Non-completing Claim |
187
- | `AC` | Falsifiable observable acceptance scenario | Acceptance Assertion |
188
- | `NG` | Explicit non-goal | Non-goal |
189
- | `FS` | Forbidden shortcut or disallowed result | Forbidden shortcut |
190
- | `RISK` | Fact that changes design, verification or recovery | Risk fact |
191
- | `EXT` | Result requiring external confirmation | External confirmation |
192
- | `DEC` | Product decision that cannot be reliably inferred | Decision required |
193
- | `HINT` | Non-binding implementation suggestion | Advisory only |
194
-
195
- Keep `OBL` and `HINT` distinct: an `OBL` must be satisfied; a `HINT` may be replaced by another valid implementation.
196
-
138
+
139
+ ## Outcome Rules
140
+
141
+ Create one or more Outcomes according to whether each observable result can be independently judged and later bound to its own Requirements and acceptance.
142
+
143
+ Do not split an Outcome because of:
144
+
145
+ - response or document length;
146
+ - frontend/backend or other implementation layers;
147
+ - file or module count;
148
+ - desired parallelism;
149
+ - Agent capacity;
150
+ - a wish to distribute execution.
151
+
152
+ Do not merge independently decidable results merely to make the document shorter.
153
+
154
+ ## Stable Keys And Anchors
155
+
156
+ Use stable semantic lowercase-kebab keys and explicit Markdown `id` anchors for important items.
157
+
158
+ ```markdown
159
+ <a id="<outcome-key>.requirement.<requirement-key>"></a>
160
+
161
+ - **REQ `<requirement-key>`**
162
+ ...
163
+ ```
164
+
165
+ Use the same pattern for controls, obligations, acceptance, decisions and other typed items. Describe meaning rather than implementation location.
166
+
167
+ Key rules:
168
+
169
+ - preserve a key when wording changes but meaning does not;
170
+ - never renumber keys because ordering changes;
171
+ - never reuse a deleted key for a different meaning;
172
+ - when merging or splitting an item, record which new keys replace the old key;
173
+ - avoid pure sequence keys such as `req-17`;
174
+ - avoid implementation keys such as `map-hook-change` or `src-button`.
175
+
176
+ ## Semantic Types
177
+
178
+ Use only the types that apply.
179
+
180
+ | Type | Meaning | Later use |
181
+ |---|---|---|
182
+ | `OUT` | Independently decidable observable result | Outcome |
183
+ | `REQ` | Required product or system behavior | Requirement |
184
+ | `CTRL` | Decided control task, placement or state | Control |
185
+ | `OBL` | Mandatory technical obligation | Technical obligation |
186
+ | `NCOMP` | Explicit result that must not be treated as completion | Non-completing Claim |
187
+ | `AC` | Falsifiable observable acceptance scenario | Acceptance Assertion |
188
+ | `NG` | Explicit non-goal | Non-goal |
189
+ | `FS` | Forbidden shortcut or disallowed result | Forbidden shortcut |
190
+ | `RISK` | Fact that changes design, verification or recovery | Risk fact |
191
+ | `EXT` | Result requiring external confirmation | External confirmation |
192
+ | `DEC` | Product decision that cannot be reliably inferred | Decision required |
193
+ | `HINT` | Non-binding implementation suggestion | Advisory only |
194
+
195
+ Keep `OBL` and `HINT` distinct: an `OBL` must be satisfied; a `HINT` may be replaced by another valid implementation.
196
+
197
197
  ## Product Surfaces, Controls And States
198
198
 
199
199
  Do not force a non-interface Source Plan to invent controls. For an in-scope interactive product, however, enumerate every user-visible surface and every material interactive control at control level; a broad feature or screen name is not enough.
200
200
 
201
201
  For each surface, state its purpose, entry and exit, persistent navigation, major regions, overlays or transient layers, and the Control keys it contains. Treat buttons, links, fields, selectors, tabs, toggles, menus, list or card actions, map or canvas gestures and other actionable elements as controls. Treat material status, validation, permission and recovery feedback as Control fields or independently keyed Requirements rather than decorative prose.
202
-
203
- Include a `CTRL` when:
204
-
205
- - the user already discussed or decided it;
206
- - its location, task or state changes product meaning;
207
- - leaving it open would permit materially different product designs.
208
-
202
+
203
+ Include a `CTRL` when:
204
+
205
+ - the user already discussed or decided it;
206
+ - its location, task or state changes product meaning;
207
+ - leaving it open would permit materially different product designs.
208
+
209
209
  For each included control, state every independently decided field separately: `Surface`, `Region`, `Control type`, `Label/content`, `Location`, `User task`, `Visibility`, `Availability`, `Trigger`, `Input`, `Validation`, `Default`, `Interaction`, `Navigation/result`, `Loading`, `Empty`, `Success`, `Failure`, `Recovery`, `Permission`, `Feedback` and `Accessibility`. Use `not applicable` when a field was considered and genuinely does not apply; do not hide an undecided product choice behind that phrase.
210
210
 
211
211
  Give every decided Control field its own stable semantic meaning. Do not compress placement, behavior, state or feedback into one broad sentence when more than one field has been decided; later repository-aware authoring must be able to map each field independently. Do not claim exact visual styling, animation, copy or responsive behavior unless it is direct, evidence-backed or within recorded delegation. When exact non-textual comparison remains necessary, preserve the selected reference id/path/URI and its covered viewport/theme/state instead of replacing it with prose.
212
-
213
- ## Acceptance Scenarios
214
-
215
- Write `AC` items as observable behavior, not low-level test commands.
216
-
217
- Each `AC` represents exactly one acceptance scenario and explicitly names the `REQ`, `CTRL`, `OBL` and/or `NCOMP` keys it accepts. It contains one `Given`, one `When` and one `Then`; each may be multiline, but together they describe only one independently decidable scenario. Never label one AC as proof for several materially different success, failure, boundary or recovery scenarios; author separate ACs instead.
218
-
212
+
213
+ ## Acceptance Scenarios
214
+
215
+ Write `AC` items as observable behavior, not low-level test commands.
216
+
217
+ Each `AC` represents exactly one acceptance scenario and explicitly names the `REQ`, `CTRL`, `OBL` and/or `NCOMP` keys it accepts. It contains one `Given`, one `When` and one `Then`; each may be multiline, but together they describe only one independently decidable scenario. Never label one AC as proof for several materially different success, failure, boundary or recovery scenarios; author separate ACs instead.
218
+
219
219
  For every important `REQ` and every material `CTRL` state, provide at least one of:
220
-
221
- - a corresponding `AC`;
222
- - an `EXT`;
223
- - a `DEC`;
224
- - an explicit non-goal disposition;
225
- - a reason machine verification is not possible.
226
-
227
- Cover the scenarios that actually exist: success, failure, boundary, recovery, permission, empty state, sample/full-population scope and forbidden results. Do not mechanically generate a fixed scenario set.
228
-
220
+
221
+ - a corresponding `AC`;
222
+ - an `EXT`;
223
+ - a `DEC`;
224
+ - an explicit non-goal disposition;
225
+ - a reason machine verification is not possible.
226
+
227
+ Cover the scenarios that actually exist: success, failure, boundary, recovery, permission, empty state, sample/full-population scope and forbidden results. Do not mechanically generate a fixed scenario set.
228
+
229
229
  Never introduce a product requirement for the first time inside an `AC`. Move hidden behavior, defaults, retention periods or recovery policies into a direct or delegated source-backed `REQ`, or into `DEC` only when no defensible recommendation exists.
230
-
231
- ## Risk And Advisory Boundaries
232
-
233
- Each `RISK` states `Fact`, `Affected Outcome`, `Basis` and `Consequence`. `Fact` uses one exact name from the complete Runtime Risk Fact set:
234
-
235
- ```text
236
- public_api_or_schema_change
237
- persistent_data_change
238
- data_migration
239
- security_boundary_change
240
- permission_boundary_change
241
- irreversible_external_effect
242
- critical_user_path
243
- full_population_operation
244
- multi_repository_change
245
- weak_observability
246
- ```
247
-
248
- Do not invent or accept aliases. A data migration uses `data_migration`, never `migration`. A critical path with weak observability produces two independent `RISK` items with distinct stable keys: one `critical_user_path` and one `weak_observability`, both naming the affected Outcome. Preserve `multi_repository_change` in Source even though the current Runtime rejects multi-repository delivery; the Compiler owns that unsupported-delivery decision. Each risk item names one affected Outcome; repeat the item with a distinct stable key when the same fact affects multiple Outcomes. If Fact or Affected Outcome cannot be determined from Source, create a `DEC` with `decision_required` instead of guessing. Generic risk prose without an affected Outcome is not actionable Source. `HINT` remains advisory and is never a Material Source Item: promote it to `OBL` if the implementation constraint is mandatory.
249
-
250
- Use `NCOMP` for an explicit, source-authoritative statement that names an outcome or shortcut that must not count as completion. It is neither an ordinary Requirement nor a non-goal: later Contract authoring maps it to a non-completing Claim and must provide negative or Counterfactual proof.
251
-
252
- This Skill emits ordinary Markdown only. Do not emit `ty-source-item` markers; repository-aware `/long-task-workflow` inserts those non-rendering markers later without rewriting the selected Source text.
253
-
254
- ## Default Markdown Structure
255
-
256
- Write in the user's language unless requested otherwise.
257
-
258
- ```markdown
259
- # <Plan title>
260
-
261
- ## 1. Goal And Success Definition
262
-
263
- - Target users
264
- - Problem
265
- - Final observable results
266
- - Success boundary
267
-
230
+
231
+ ## Risk And Advisory Boundaries
232
+
233
+ Each `RISK` states `Fact`, `Affected Outcome`, `Basis` and `Consequence`. `Fact` uses one exact name from the complete Runtime Risk Fact set:
234
+
235
+ ```text
236
+ public_api_or_schema_change
237
+ persistent_data_change
238
+ data_migration
239
+ security_boundary_change
240
+ permission_boundary_change
241
+ irreversible_external_effect
242
+ critical_user_path
243
+ full_population_operation
244
+ multi_repository_change
245
+ weak_observability
246
+ ```
247
+
248
+ Do not invent or accept aliases. A data migration uses `data_migration`, never `migration`. A critical path with weak observability produces two independent `RISK` items with distinct stable keys: one `critical_user_path` and one `weak_observability`, both naming the affected Outcome. Preserve `multi_repository_change` in Source even though the current Runtime rejects multi-repository delivery; the Compiler owns that unsupported-delivery decision. Each risk item names one affected Outcome; repeat the item with a distinct stable key when the same fact affects multiple Outcomes. If Fact or Affected Outcome cannot be determined from Source, create a `DEC` with `decision_required` instead of guessing. Generic risk prose without an affected Outcome is not actionable Source. `HINT` remains advisory and is never a Material Source Item: promote it to `OBL` if the implementation constraint is mandatory.
249
+
250
+ Use `NCOMP` for an explicit, source-authoritative statement that names an outcome or shortcut that must not count as completion. It is neither an ordinary Requirement nor a non-goal: later Contract authoring maps it to a non-completing Claim and must provide negative or Counterfactual proof.
251
+
252
+ This Skill emits ordinary Markdown only. Do not emit `ty-source-item` markers; repository-aware `/long-task-workflow` inserts those non-rendering markers later without rewriting the selected Source text.
253
+
254
+ ## Default Markdown Structure
255
+
256
+ Write in the user's language unless requested otherwise.
257
+
258
+ ```markdown
259
+ # <Plan title>
260
+
261
+ ## 1. Goal And Success Definition
262
+
263
+ - Target users
264
+ - Problem
265
+ - Final observable results
266
+ - Success boundary
267
+
268
268
  ## 2. Background, Current State And Problem
269
-
270
- - Current situation
271
- - Existing problem
272
- - Why this delivery is needed
269
+
270
+ - Current situation
271
+ - Existing problem
272
+ - Why this delivery is needed
273
273
  - Known constraints
274
274
 
275
275
  ## 3. Input Inventory And Interpretation
@@ -280,13 +280,13 @@ Write in the user's language unless requested otherwise.
280
280
  - Unreadable or intentionally unused content
281
281
 
282
282
  ## 4. Delivery Scope
283
-
284
- ### In Scope
285
-
286
- ### Non-goals
287
-
288
- ### Forbidden Shortcuts
289
-
283
+
284
+ ### In Scope
285
+
286
+ ### Non-goals
287
+
288
+ ### Forbidden Shortcuts
289
+
290
290
  ## 5. Product Surface Inventory
291
291
 
292
292
  - Surface purpose
@@ -294,23 +294,23 @@ Write in the user's language unless requested otherwise.
294
294
  - Regions, overlays and Control keys
295
295
 
296
296
  ## 6. Outcome Overview
297
-
298
- - Outcome key
299
- - Observable result
300
- - Dependencies
301
-
297
+
298
+ - Outcome key
299
+ - Observable result
300
+ - Dependencies
301
+
302
302
  ## 7. Outcomes
303
-
304
- <a id="outcome.<outcome-key>"></a>
305
-
306
- ### OUT `<outcome-key>`: <Outcome title>
307
-
308
- #### Observable Result
309
-
303
+
304
+ <a id="outcome.<outcome-key>"></a>
305
+
306
+ ### OUT `<outcome-key>`: <Outcome title>
307
+
308
+ #### Observable Result
309
+
310
310
  #### Product Requirements
311
-
312
- <a id="<outcome-key>.requirement.<requirement-key>"></a>
313
-
311
+
312
+ <a id="<outcome-key>.requirement.<requirement-key>"></a>
313
+
314
314
  - **REQ `<requirement-key>`**
315
315
  - Origin: direct | derived | delegated | evidence-backed
316
316
  - Source basis:
@@ -323,18 +323,18 @@ Write in the user's language unless requested otherwise.
323
323
  - Entry / exit:
324
324
  - Regions / overlays:
325
325
  - Included Control keys:
326
-
327
- #### User Flow And States
328
-
329
- - Normal flow
330
- - Failure flow
331
- - Recovery flow
332
- - Boundary cases
333
-
334
- #### Controls And Product Feedback
335
-
336
- <a id="<outcome-key>.control.<control-key>"></a>
337
-
326
+
327
+ #### User Flow And States
328
+
329
+ - Normal flow
330
+ - Failure flow
331
+ - Recovery flow
332
+ - Boundary cases
333
+
334
+ #### Controls And Product Feedback
335
+
336
+ <a id="<outcome-key>.control.<control-key>"></a>
337
+
338
338
  - **CTRL `<control-key>`**
339
339
  - Origin: direct | derived | delegated | evidence-backed
340
340
  - Source basis:
@@ -360,44 +360,44 @@ Write in the user's language unless requested otherwise.
360
360
  - Permission:
361
361
  - Feedback:
362
362
  - Accessibility:
363
-
364
- #### Technical Obligations And Boundaries
365
-
366
- <a id="<outcome-key>.obligation.<obligation-key>"></a>
367
-
368
- - **OBL `<obligation-key>`**
369
- ...
370
-
371
- <a id="<outcome-key>.non-completing.<non-completing-key>"></a>
372
-
373
- - **NCOMP `<non-completing-key>`**
374
- ...
375
-
376
- #### Implementation Hints
377
-
378
- - **HINT `<hint-key>`**
379
- ...
380
-
381
- #### Acceptance Scenarios
382
-
383
- <a id="<outcome-key>.acceptance.<acceptance-key>"></a>
384
-
385
- - **AC `<acceptance-key>`**
386
- - Accepts: REQ `<key>`, CTRL `<key>`, OBL `<key>`, NCOMP `<key>`
387
- - Given:
388
- - When:
389
- - Then:
390
-
391
- #### Risks And Recovery
392
-
393
- <a id="<outcome-key>.risk.<risk-key>"></a>
394
-
395
- - **RISK `<risk-key>`**
396
- - Fact:
397
- - Affected Outcome:
398
- - Basis:
399
- - Consequence:
400
-
363
+
364
+ #### Technical Obligations And Boundaries
365
+
366
+ <a id="<outcome-key>.obligation.<obligation-key>"></a>
367
+
368
+ - **OBL `<obligation-key>`**
369
+ ...
370
+
371
+ <a id="<outcome-key>.non-completing.<non-completing-key>"></a>
372
+
373
+ - **NCOMP `<non-completing-key>`**
374
+ ...
375
+
376
+ #### Implementation Hints
377
+
378
+ - **HINT `<hint-key>`**
379
+ ...
380
+
381
+ #### Acceptance Scenarios
382
+
383
+ <a id="<outcome-key>.acceptance.<acceptance-key>"></a>
384
+
385
+ - **AC `<acceptance-key>`**
386
+ - Accepts: REQ `<key>`, CTRL `<key>`, OBL `<key>`, NCOMP `<key>`
387
+ - Given:
388
+ - When:
389
+ - Then:
390
+
391
+ #### Risks And Recovery
392
+
393
+ <a id="<outcome-key>.risk.<risk-key>"></a>
394
+
395
+ - **RISK `<risk-key>`**
396
+ - Fact:
397
+ - Affected Outcome:
398
+ - Basis:
399
+ - Consequence:
400
+
401
401
  ## 8. Cross-Outcome Constraints
402
402
 
403
403
  ## 9. External Confirmations
@@ -411,30 +411,30 @@ Write in the user's language unless requested otherwise.
411
411
  - Changes product meaning: no for derived; yes or no for delegated
412
412
 
413
413
  ## 11. Decisions Required
414
-
415
- <a id="decision.<decision-key>"></a>
416
-
417
- - **DEC `<decision-key>`**
418
- - Status: decision_required
419
- - Decision:
420
- - Options:
421
- - Why it cannot be reliably derived:
422
- - Affected REQ / AC:
423
-
414
+
415
+ <a id="decision.<decision-key>"></a>
416
+
417
+ - **DEC `<decision-key>`**
418
+ - Status: decision_required
419
+ - Decision:
420
+ - Options:
421
+ - Why it cannot be reliably derived:
422
+ - Affected REQ / AC:
423
+
424
424
  ## 12. Completeness Check
425
-
426
- - Covered core requirements
427
- - Unresolved product semantics
428
- - Unbound repository or verification facts
429
- - Explicitly out-of-scope items
430
- ```
431
-
432
- ## Completeness Check
433
-
434
- Before returning the plan, verify:
435
-
436
- 1. Every material original requirement is preserved.
437
- 2. Distinct requirements were not collapsed into one vague Outcome.
425
+
426
+ - Covered core requirements
427
+ - Unresolved product semantics
428
+ - Unbound repository or verification facts
429
+ - Explicitly out-of-scope items
430
+ ```
431
+
432
+ ## Completeness Check
433
+
434
+ Before returning the plan, verify:
435
+
436
+ 1. Every material original requirement is preserved.
437
+ 2. Distinct requirements were not collapsed into one vague Outcome.
438
438
  3. Every supplied artifact appears in the Input Inventory with complete coverage or an explicit gap/disposition.
439
439
  4. Every material input statement maps to a keyed plan item or an explicit unused/conflict disposition.
440
440
  5. Every `REQ` and material `CTRL` state has an `AC`, `EXT`, `DEC` or explicit exception.
@@ -458,10 +458,10 @@ Before returning the plan, verify:
458
458
  23. Every `RISK` has one exact Fact, one Affected Outcome, Basis and Consequence; ambiguity is a `DEC`.
459
459
  24. Every decided control field remains independently traceable instead of being compressed into an aggregate state sentence.
460
460
  25. The document contains enough incorporated meaning for later Contract authoring without requiring the original conversation; any still-required external artifact is named explicitly.
461
-
462
- Do not emit a matrix or machine gate. End with:
463
-
464
- ```text
461
+
462
+ Do not emit a matrix or machine gate. End with:
463
+
464
+ ```text
465
465
  Completeness status:
466
466
  - Ready for Contract authoring: yes|no
467
467
  - Input coverage gaps: none|...
@@ -469,17 +469,17 @@ Completeness status:
469
469
  - Decisions required: DEC-...
470
470
  - Advisory implementation hints: HINT-...
471
471
  - Unbound project facts: ...
472
- ```
473
-
474
- ## Non-Goals
475
-
476
- Do not create:
477
-
478
- - a Source Plan Schema or mandatory format validator;
479
- - a Source Plan CLI, Preflight or Compile step;
480
- - a Source Plan Receipt, Coverage Cache, Authority or state file;
472
+ ```
473
+
474
+ ## Non-Goals
475
+
476
+ Do not create:
477
+
478
+ - a Source Plan Schema or mandatory format validator;
479
+ - a Source Plan CLI, Preflight or Compile step;
480
+ - a Source Plan Receipt, Coverage Cache, Authority or state file;
481
481
  - a Delivery Contract, runner, verification input or Assertion observation;
482
482
  - a low/high-fidelity artifact, visual candidate, Figma handoff or design prototype;
483
483
  - a Context update, implementation, verification run or completion judgment.
484
-
485
- The Source Plan improves the quality of declared Source. It cannot prove that the user has expressed every real requirement.
484
+
485
+ The Source Plan improves the quality of declared Source. It cannot prove that the user has expressed every real requirement.