project-tiny-context-harness 0.6.0 → 0.6.2
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 +6 -4
- package/assets/README.md +9 -7
- package/assets/README.zh-CN.md +19 -17
- package/assets/context_templates/architecture.md +5 -5
- package/assets/context_templates/area.md +5 -5
- package/assets/context_templates/product-surface-contract.md +11 -11
- package/assets/github/harness.yml +2 -2
- package/assets/skills/context_development_engineer/SKILL.md +17 -17
- package/assets/skills/context_full_project_export/SKILL.md +42 -42
- package/assets/skills/context_product_plan/SKILL.md +9 -9
- package/assets/skills/context_surface_contract/SKILL.md +5 -5
- package/assets/skills/context_uiux_design/SKILL.md +24 -24
- package/assets/skills/long-task-workflow/SKILL.md +6 -5
- package/assets/skills/long-task-workflow/agents/openai.yaml +4 -4
- package/assets/skills/long-task-workflow/references/contract-authoring.md +22 -19
- package/assets/skills/long-task-workflow/references/evidence-design.md +13 -13
- package/assets/skills/normal-long-task/SKILL.md +12 -12
- package/assets/skills/source-plan-authoring/SKILL.md +232 -129
- package/assets/tools/validate_context.py +442 -442
- package/dist/commands/long-task-authoring.js +65 -65
- package/migrations/README.md +8 -8
- package/package.json +1 -1
|
@@ -1,25 +1,27 @@
|
|
|
1
1
|
---
|
|
2
|
-
name: source-plan-authoring
|
|
3
|
-
description: Use only when the user explicitly asks for 初版方案、源方案、方案源稿、Source Plan, initial delivery plan, or asks to refine or audit
|
|
2
|
+
name: source-plan-authoring
|
|
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
4
|
---
|
|
5
5
|
|
|
6
6
|
# Source Plan Authoring
|
|
7
7
|
|
|
8
8
|
## Objective
|
|
9
9
|
|
|
10
|
-
Produce one high-fidelity, self-contained Markdown Source Plan
|
|
11
|
-
|
|
12
|
-
Record every product, technical and acceptance meaning that later work must not omit, change or silently add. Prefer semantic completeness over template completeness.
|
|
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
|
+
|
|
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
13
|
|
|
14
14
|
## Boundaries
|
|
15
15
|
|
|
16
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
|
-
- Preserve the original meaning and every material qualifier from the user's discussion, research and supplied
|
|
17
|
+
- Preserve the original meaning and every material qualifier from the user's discussion, research and every supplied artifact.
|
|
18
|
+
- Do not require the user to pre-normalize inputs or restate content already available in an attachment.
|
|
18
19
|
- Do not update `project_context/**` or treat the Source Plan as durable project Context.
|
|
19
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.
|
|
20
|
-
- Do not bind owners, files, runners, verification inputs, proof surfaces or Assertion observations for a real repository. Later Contract authoring owns those bindings.
|
|
21
|
-
- Do not generate Delivery Contract YAML, execute implementation, run Long-Task commands or declare work complete.
|
|
22
|
-
-
|
|
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
|
+
- Do not generate Delivery Contract YAML, execute implementation, run Long-Task commands or declare work complete.
|
|
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
|
+
- Do not make this recommended structure a mandatory input protocol for later work.
|
|
23
25
|
|
|
24
26
|
## Relationship To Other Skills
|
|
25
27
|
|
|
@@ -28,17 +30,49 @@ Record every product, technical and acceptance meaning that later work must not
|
|
|
28
30
|
- It does not replace Contract Draft authoring inside `long-task-workflow`.
|
|
29
31
|
- Its recommended structure is optional input guidance.
|
|
30
32
|
- 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.
|
|
31
|
-
- 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.
|
|
33
|
+
- 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.
|
|
34
|
+
|
|
35
|
+
## Intake Modes And Source Coverage
|
|
36
|
+
|
|
37
|
+
Infer the working mode without asking the user to choose it:
|
|
38
|
+
|
|
39
|
+
- **Refinement mode:** preserve and improve one substantially complete plan.
|
|
40
|
+
- **Synthesis mode:** turn a goal plus mixed notes, documents, images, diagrams, tables or examples into a new plan.
|
|
41
|
+
- **Hybrid mode:** use an existing plan as the backbone and fill its gaps from the remaining artifacts.
|
|
42
|
+
|
|
43
|
+
A short request is sufficient when it identifies the artifact roles, states the product or delivery goal, explains whether references are exact targets or inspiration and asks for synthesis, refinement or elaboration. Do not require a fixed questionnaire or a pre-existing outline. Do not ask the user to approve a defensible recommended plan choice. Ask only when a supplied artifact cannot be accessed, authoritative inputs conflict, the user explicitly reserves a choice, a missing material preference could change the research or recommendation, or no defensible recommendation can be formed.
|
|
44
|
+
|
|
45
|
+
Before authoring:
|
|
46
|
+
|
|
47
|
+
1. Assign every supplied artifact a stable input ID and inspect it with format-appropriate capabilities. Cover all pages, frames, screens, tables, diagrams, annotations and visible states that can carry material meaning; never silently sample a multi-part artifact.
|
|
48
|
+
2. Classify each input as user instruction, authoritative product requirement, authoritative technical constraint, existing plan, repository/Context evidence, reference or inspiration. User-stated precedence wins; otherwise report material conflicts as `DEC` instead of merging them silently.
|
|
49
|
+
3. For screenshots or visual references, inventory visible surfaces, regions, controls, content hierarchy, navigation cues and represented states. Treat them as inspiration rather than an exact reproduction target unless the user says otherwise; do not import unrelated branding, sample data or product scope.
|
|
50
|
+
4. Record an Input Inventory in the Source Plan with each input ID, role, authority, material content incorporated and any unreadable or intentionally unused portion. The inventory is traceability, not a new semantic type or authority.
|
|
51
|
+
5. Make the resulting plan self-contained: incorporate every material requirement or constraint into a keyed item. Keep an external artifact reference only when the artifact itself remains necessary for exact visual, legal or other non-textual comparison.
|
|
52
|
+
|
|
53
|
+
## Preference And Research Gate
|
|
54
|
+
|
|
55
|
+
Before comparative research or a material product, technical, architecture or provider selection:
|
|
56
|
+
|
|
57
|
+
1. Identify the decision criteria that could materially change the research scope, candidate set or recommendation. Common axes include quality or fidelity versus cost, delivery speed, reliability or support, privacy or compliance, control or vendor lock-in, operational burden, platform coverage and future extensibility.
|
|
58
|
+
2. Treat a preference as known only when it follows from the user's words, a supplied authoritative artifact, project Context or another controlling constraint. Do not silently turn the author's own taste into user intent.
|
|
59
|
+
3. If a material criterion is unknown or ambiguous, stop before comparative research or selection and ask the user one concise set of targeted questions about only the decision-changing axes. For example, ask whether quality or total cost should dominate when that answer would change which providers or technologies deserve investigation.
|
|
60
|
+
4. Do not ask again when the preference is already available. Do not interrupt minor, reversible choices, or a choice with the same defensible recommendation across plausible preferences. This conditional gate is not a mandatory intake questionnaire.
|
|
61
|
+
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.
|
|
62
|
+
|
|
63
|
+
Preference clarification determines what outcome to optimize. It does not approve a purchase, contract, deployment, permission grant, data transfer or other real-world action.
|
|
32
64
|
|
|
33
65
|
## Authoring Workflow
|
|
34
66
|
|
|
35
|
-
1. Inventory every material
|
|
36
|
-
2. Preserve direct requirements before reorganizing them. Never compress several distinct requirements into a broad capability statement that loses qualifiers.
|
|
37
|
-
3. Classify every addition as `direct`, `derived`, evidence-backed repository/Context information, or `decision_required`.
|
|
38
|
-
4.
|
|
39
|
-
5.
|
|
40
|
-
6.
|
|
41
|
-
7.
|
|
67
|
+
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.
|
|
68
|
+
2. Preserve direct requirements before reorganizing them. Never compress several distinct requirements into a broad capability statement that loses qualifiers.
|
|
69
|
+
3. Classify every material addition as `direct`, `derived`, `delegated`, evidence-backed repository/Context information, or `decision_required`.
|
|
70
|
+
4. Resolve the end-to-end user journey and applicable surfaces before enumerating their regions, controls, states and feedback.
|
|
71
|
+
5. Define Outcomes only where observable results can be independently judged and later mapped to Requirements and acceptance.
|
|
72
|
+
6. Assign stable semantic keys and explicit anchors to important items.
|
|
73
|
+
7. Write product requirements, applicable flows/states, controls, technical obligations, implementation hints and observable acceptance without hiding new semantics between types.
|
|
74
|
+
8. Trace every input to incorporated items or an explicit unused/unreadable disposition.
|
|
75
|
+
9. Run the completeness check, revise the same document and end with a compact readiness summary.
|
|
42
76
|
|
|
43
77
|
## Expansion Boundary
|
|
44
78
|
|
|
@@ -57,7 +91,25 @@ For every derived item:
|
|
|
57
91
|
- state why the derivation is necessary;
|
|
58
92
|
- confirm that it does not change user capability, business rules or product scope.
|
|
59
93
|
|
|
60
|
-
Do not disguise one possible product choice as a necessary derivation.
|
|
94
|
+
Do not disguise one possible product choice as a necessary derivation.
|
|
95
|
+
|
|
96
|
+
### Delegated elaboration
|
|
97
|
+
|
|
98
|
+
When the user explicitly asks the Skill to synthesize, refine, complete, flesh out or use its judgment, treat that as default plan-authoring delegation to make coherent product and technical choices needed by the stated goal. A recommendation is defensible only when material decision criteria are known and supplied evidence, project Context, established conventions or a conservative no-effect baseline supports the result. After the Preference And Research Gate is satisfied, adopt and record that recommendation instead of pausing for approval. High impact alone does not make a plan choice unresolved.
|
|
99
|
+
|
|
100
|
+
Typical delegated choices include information hierarchy, screen grouping, navigation between already requested capabilities, control placement and labels, input validation implied by the data, non-destructive loading/empty/error/retry feedback, representative content needed to make acceptance falsifiable, product defaults, thresholds, permission models, retention, platform scope and staged provider or automation policies when a defensible recommendation exists.
|
|
101
|
+
|
|
102
|
+
For every delegated item or tightly coupled group:
|
|
103
|
+
|
|
104
|
+
- mark it `delegated`;
|
|
105
|
+
- state `Delegated By`, citing the user's authoring instruction;
|
|
106
|
+
- state `Basis`, citing the relevant input IDs, constraints or convention;
|
|
107
|
+
- state why the choice is coherent and what product meaning it adds;
|
|
108
|
+
- keep it within the stated goal and do not contradict a higher-authority input.
|
|
109
|
+
|
|
110
|
+
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.
|
|
111
|
+
|
|
112
|
+
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.
|
|
61
113
|
|
|
62
114
|
### Repository or Context evidence
|
|
63
115
|
|
|
@@ -65,11 +117,11 @@ When supplied project evidence establishes an existing module boundary, state mo
|
|
|
65
117
|
|
|
66
118
|
Leave real owner/path/binding/runner selection to later repository-aware Contract authoring.
|
|
67
119
|
|
|
68
|
-
### New product semantics
|
|
69
|
-
|
|
70
|
-
Use a `DEC` item with status `decision_required`
|
|
71
|
-
|
|
72
|
-
|
|
120
|
+
### New product semantics
|
|
121
|
+
|
|
122
|
+
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`.
|
|
123
|
+
|
|
124
|
+
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:
|
|
73
125
|
|
|
74
126
|
- a new user capability or changed business rule;
|
|
75
127
|
- a default, threshold, range or metric;
|
|
@@ -80,7 +132,7 @@ Never silently choose:
|
|
|
80
132
|
- data persistence or retention behavior;
|
|
81
133
|
- a product recovery path after failure;
|
|
82
134
|
- sample versus full-population coverage;
|
|
83
|
-
- a pricing, quota, budget or risk rule.
|
|
135
|
+
- a pricing, quota, budget or risk rule.
|
|
84
136
|
|
|
85
137
|
## Outcome Rules
|
|
86
138
|
|
|
@@ -128,9 +180,9 @@ Use only the types that apply.
|
|
|
128
180
|
| `OUT` | Independently decidable observable result | Outcome |
|
|
129
181
|
| `REQ` | Required product or system behavior | Requirement |
|
|
130
182
|
| `CTRL` | Decided control task, placement or state | Control |
|
|
131
|
-
| `OBL` | Mandatory technical obligation | Technical obligation |
|
|
132
|
-
| `NCOMP` | Explicit result that must not be treated as completion | Non-completing Claim |
|
|
133
|
-
| `AC` | Falsifiable observable acceptance scenario | Acceptance Assertion |
|
|
183
|
+
| `OBL` | Mandatory technical obligation | Technical obligation |
|
|
184
|
+
| `NCOMP` | Explicit result that must not be treated as completion | Non-completing Claim |
|
|
185
|
+
| `AC` | Falsifiable observable acceptance scenario | Acceptance Assertion |
|
|
134
186
|
| `NG` | Explicit non-goal | Non-goal |
|
|
135
187
|
| `FS` | Forbidden shortcut or disallowed result | Forbidden shortcut |
|
|
136
188
|
| `RISK` | Fact that changes design, verification or recovery | Risk fact |
|
|
@@ -140,9 +192,11 @@ Use only the types that apply.
|
|
|
140
192
|
|
|
141
193
|
Keep `OBL` and `HINT` distinct: an `OBL` must be satisfied; a `HINT` may be replaced by another valid implementation.
|
|
142
194
|
|
|
143
|
-
## Controls And States
|
|
144
|
-
|
|
145
|
-
Do not force
|
|
195
|
+
## Product Surfaces, Controls And States
|
|
196
|
+
|
|
197
|
+
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.
|
|
198
|
+
|
|
199
|
+
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.
|
|
146
200
|
|
|
147
201
|
Include a `CTRL` when:
|
|
148
202
|
|
|
@@ -150,17 +204,17 @@ Include a `CTRL` when:
|
|
|
150
204
|
- its location, task or state changes product meaning;
|
|
151
205
|
- leaving it open would permit materially different product designs.
|
|
152
206
|
|
|
153
|
-
For each included control, state every independently decided field separately: `Location`, `User task`, `Trigger`, `Input`, `Loading`, `Empty`, `Success`, `Failure` and `
|
|
207
|
+
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.
|
|
154
208
|
|
|
155
|
-
Give every decided Control field its own stable semantic meaning. Do not compress
|
|
209
|
+
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.
|
|
156
210
|
|
|
157
211
|
## Acceptance Scenarios
|
|
158
212
|
|
|
159
|
-
Write `AC` items as observable behavior, not low-level test commands.
|
|
160
|
-
|
|
161
|
-
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.
|
|
213
|
+
Write `AC` items as observable behavior, not low-level test commands.
|
|
162
214
|
|
|
163
|
-
|
|
215
|
+
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.
|
|
216
|
+
|
|
217
|
+
For every important `REQ` and every material `CTRL` state, provide at least one of:
|
|
164
218
|
|
|
165
219
|
- a corresponding `AC`;
|
|
166
220
|
- an `EXT`;
|
|
@@ -170,30 +224,30 @@ For every important `REQ`, provide at least one of:
|
|
|
170
224
|
|
|
171
225
|
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.
|
|
172
226
|
|
|
173
|
-
Never introduce a product requirement for the first time inside an `AC`. Move hidden behavior, defaults, retention periods or recovery policies into a source-backed `REQ
|
|
174
|
-
|
|
175
|
-
## Risk And Advisory Boundaries
|
|
176
|
-
|
|
177
|
-
Each `RISK` states `Fact`, `Affected Outcome`, `Basis` and `Consequence`. `Fact` uses one exact name from the complete Runtime Risk Fact set:
|
|
178
|
-
|
|
179
|
-
```text
|
|
180
|
-
public_api_or_schema_change
|
|
181
|
-
persistent_data_change
|
|
182
|
-
data_migration
|
|
183
|
-
security_boundary_change
|
|
184
|
-
permission_boundary_change
|
|
185
|
-
irreversible_external_effect
|
|
186
|
-
critical_user_path
|
|
187
|
-
full_population_operation
|
|
188
|
-
multi_repository_change
|
|
189
|
-
weak_observability
|
|
190
|
-
```
|
|
191
|
-
|
|
192
|
-
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.
|
|
193
|
-
|
|
194
|
-
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.
|
|
195
|
-
|
|
196
|
-
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.
|
|
227
|
+
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.
|
|
228
|
+
|
|
229
|
+
## Risk And Advisory Boundaries
|
|
230
|
+
|
|
231
|
+
Each `RISK` states `Fact`, `Affected Outcome`, `Basis` and `Consequence`. `Fact` uses one exact name from the complete Runtime Risk Fact set:
|
|
232
|
+
|
|
233
|
+
```text
|
|
234
|
+
public_api_or_schema_change
|
|
235
|
+
persistent_data_change
|
|
236
|
+
data_migration
|
|
237
|
+
security_boundary_change
|
|
238
|
+
permission_boundary_change
|
|
239
|
+
irreversible_external_effect
|
|
240
|
+
critical_user_path
|
|
241
|
+
full_population_operation
|
|
242
|
+
multi_repository_change
|
|
243
|
+
weak_observability
|
|
244
|
+
```
|
|
245
|
+
|
|
246
|
+
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.
|
|
247
|
+
|
|
248
|
+
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.
|
|
249
|
+
|
|
250
|
+
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.
|
|
197
251
|
|
|
198
252
|
## Default Markdown Structure
|
|
199
253
|
|
|
@@ -209,14 +263,21 @@ Write in the user's language unless requested otherwise.
|
|
|
209
263
|
- Final observable results
|
|
210
264
|
- Success boundary
|
|
211
265
|
|
|
212
|
-
## 2. Background, Current State And Problem
|
|
266
|
+
## 2. Background, Current State And Problem
|
|
213
267
|
|
|
214
268
|
- Current situation
|
|
215
269
|
- Existing problem
|
|
216
270
|
- Why this delivery is needed
|
|
217
|
-
- Known constraints
|
|
218
|
-
|
|
219
|
-
## 3.
|
|
271
|
+
- Known constraints
|
|
272
|
+
|
|
273
|
+
## 3. Input Inventory And Interpretation
|
|
274
|
+
|
|
275
|
+
- Input ID
|
|
276
|
+
- Role and authority
|
|
277
|
+
- Material content incorporated
|
|
278
|
+
- Unreadable or intentionally unused content
|
|
279
|
+
|
|
280
|
+
## 4. Delivery Scope
|
|
220
281
|
|
|
221
282
|
### In Scope
|
|
222
283
|
|
|
@@ -224,13 +285,19 @@ Write in the user's language unless requested otherwise.
|
|
|
224
285
|
|
|
225
286
|
### Forbidden Shortcuts
|
|
226
287
|
|
|
227
|
-
##
|
|
288
|
+
## 5. Product Surface Inventory
|
|
289
|
+
|
|
290
|
+
- Surface purpose
|
|
291
|
+
- Entry, exit and navigation
|
|
292
|
+
- Regions, overlays and Control keys
|
|
293
|
+
|
|
294
|
+
## 6. Outcome Overview
|
|
228
295
|
|
|
229
296
|
- Outcome key
|
|
230
297
|
- Observable result
|
|
231
298
|
- Dependencies
|
|
232
299
|
|
|
233
|
-
##
|
|
300
|
+
## 7. Outcomes
|
|
234
301
|
|
|
235
302
|
<a id="outcome.<outcome-key>"></a>
|
|
236
303
|
|
|
@@ -238,12 +305,22 @@ Write in the user's language unless requested otherwise.
|
|
|
238
305
|
|
|
239
306
|
#### Observable Result
|
|
240
307
|
|
|
241
|
-
#### Product Requirements
|
|
308
|
+
#### Product Requirements
|
|
242
309
|
|
|
243
310
|
<a id="<outcome-key>.requirement.<requirement-key>"></a>
|
|
244
311
|
|
|
245
|
-
- **REQ `<requirement-key>`**
|
|
246
|
-
|
|
312
|
+
- **REQ `<requirement-key>`**
|
|
313
|
+
- Origin: direct | derived | delegated | evidence-backed
|
|
314
|
+
- Source basis:
|
|
315
|
+
- Requirement:
|
|
316
|
+
|
|
317
|
+
#### Surface And Region Model
|
|
318
|
+
|
|
319
|
+
- Surface:
|
|
320
|
+
- Purpose:
|
|
321
|
+
- Entry / exit:
|
|
322
|
+
- Regions / overlays:
|
|
323
|
+
- Included Control keys:
|
|
247
324
|
|
|
248
325
|
#### User Flow And States
|
|
249
326
|
|
|
@@ -256,28 +333,43 @@ Write in the user's language unless requested otherwise.
|
|
|
256
333
|
|
|
257
334
|
<a id="<outcome-key>.control.<control-key>"></a>
|
|
258
335
|
|
|
259
|
-
- **CTRL `<control-key>`**
|
|
260
|
-
-
|
|
261
|
-
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
336
|
+
- **CTRL `<control-key>`**
|
|
337
|
+
- Origin: direct | derived | delegated | evidence-backed
|
|
338
|
+
- Source basis:
|
|
339
|
+
- Surface:
|
|
340
|
+
- Region:
|
|
341
|
+
- Control type:
|
|
342
|
+
- Label/content:
|
|
343
|
+
- Location:
|
|
344
|
+
- User task:
|
|
345
|
+
- Visibility:
|
|
346
|
+
- Availability:
|
|
347
|
+
- Trigger:
|
|
348
|
+
- Input:
|
|
349
|
+
- Validation:
|
|
350
|
+
- Default:
|
|
351
|
+
- Interaction:
|
|
352
|
+
- Navigation/result:
|
|
353
|
+
- Loading:
|
|
354
|
+
- Empty:
|
|
355
|
+
- Success:
|
|
356
|
+
- Failure:
|
|
357
|
+
- Recovery:
|
|
358
|
+
- Permission:
|
|
359
|
+
- Feedback:
|
|
360
|
+
- Accessibility:
|
|
269
361
|
|
|
270
362
|
#### Technical Obligations And Boundaries
|
|
271
363
|
|
|
272
364
|
<a id="<outcome-key>.obligation.<obligation-key>"></a>
|
|
273
365
|
|
|
274
|
-
- **OBL `<obligation-key>`**
|
|
275
|
-
...
|
|
276
|
-
|
|
277
|
-
<a id="<outcome-key>.non-completing.<non-completing-key>"></a>
|
|
278
|
-
|
|
279
|
-
- **NCOMP `<non-completing-key>`**
|
|
280
|
-
...
|
|
366
|
+
- **OBL `<obligation-key>`**
|
|
367
|
+
...
|
|
368
|
+
|
|
369
|
+
<a id="<outcome-key>.non-completing.<non-completing-key>"></a>
|
|
370
|
+
|
|
371
|
+
- **NCOMP `<non-completing-key>`**
|
|
372
|
+
...
|
|
281
373
|
|
|
282
374
|
#### Implementation Hints
|
|
283
375
|
|
|
@@ -288,34 +380,35 @@ Write in the user's language unless requested otherwise.
|
|
|
288
380
|
|
|
289
381
|
<a id="<outcome-key>.acceptance.<acceptance-key>"></a>
|
|
290
382
|
|
|
291
|
-
- **AC `<acceptance-key>`**
|
|
292
|
-
- Accepts: REQ `<key>`, CTRL `<key>`, OBL `<key>`, NCOMP `<key>`
|
|
293
|
-
- Given:
|
|
383
|
+
- **AC `<acceptance-key>`**
|
|
384
|
+
- Accepts: REQ `<key>`, CTRL `<key>`, OBL `<key>`, NCOMP `<key>`
|
|
385
|
+
- Given:
|
|
294
386
|
- When:
|
|
295
387
|
- Then:
|
|
296
388
|
|
|
297
|
-
#### Risks And Recovery
|
|
298
|
-
|
|
299
|
-
<a id="<outcome-key>.risk.<risk-key>"></a>
|
|
300
|
-
|
|
301
|
-
- **RISK `<risk-key>`**
|
|
302
|
-
- Fact:
|
|
303
|
-
- Affected Outcome:
|
|
304
|
-
- Basis:
|
|
305
|
-
- Consequence:
|
|
306
|
-
|
|
307
|
-
## 6. Cross-Outcome Constraints
|
|
308
|
-
|
|
309
|
-
## 7. External Confirmations
|
|
389
|
+
#### Risks And Recovery
|
|
310
390
|
|
|
311
|
-
|
|
391
|
+
<a id="<outcome-key>.risk.<risk-key>"></a>
|
|
312
392
|
|
|
313
|
-
-
|
|
314
|
-
-
|
|
315
|
-
-
|
|
316
|
-
-
|
|
393
|
+
- **RISK `<risk-key>`**
|
|
394
|
+
- Fact:
|
|
395
|
+
- Affected Outcome:
|
|
396
|
+
- Basis:
|
|
397
|
+
- Consequence:
|
|
317
398
|
|
|
318
|
-
##
|
|
399
|
+
## 8. Cross-Outcome Constraints
|
|
400
|
+
|
|
401
|
+
## 9. External Confirmations
|
|
402
|
+
|
|
403
|
+
## 10. Source Traceability And Authoring Decisions
|
|
404
|
+
|
|
405
|
+
- Item or group:
|
|
406
|
+
- Origin: direct | derived | delegated | evidence-backed
|
|
407
|
+
- Source / Derived From / Delegated By:
|
|
408
|
+
- Basis and reason:
|
|
409
|
+
- Changes product meaning: no for derived; yes or no for delegated
|
|
410
|
+
|
|
411
|
+
## 11. Decisions Required
|
|
319
412
|
|
|
320
413
|
<a id="decision.<decision-key>"></a>
|
|
321
414
|
|
|
@@ -326,7 +419,7 @@ Write in the user's language unless requested otherwise.
|
|
|
326
419
|
- Why it cannot be reliably derived:
|
|
327
420
|
- Affected REQ / AC:
|
|
328
421
|
|
|
329
|
-
##
|
|
422
|
+
## 12. Completeness Check
|
|
330
423
|
|
|
331
424
|
- Covered core requirements
|
|
332
425
|
- Unresolved product semantics
|
|
@@ -340,30 +433,40 @@ Before returning the plan, verify:
|
|
|
340
433
|
|
|
341
434
|
1. Every material original requirement is preserved.
|
|
342
435
|
2. Distinct requirements were not collapsed into one vague Outcome.
|
|
343
|
-
3. Every
|
|
344
|
-
4. Every
|
|
345
|
-
5. Every `
|
|
346
|
-
6.
|
|
347
|
-
7. Every
|
|
348
|
-
8.
|
|
349
|
-
9.
|
|
350
|
-
10.
|
|
351
|
-
11.
|
|
352
|
-
12.
|
|
353
|
-
13.
|
|
354
|
-
14. Every `
|
|
355
|
-
15.
|
|
356
|
-
16.
|
|
357
|
-
17.
|
|
436
|
+
3. Every supplied artifact appears in the Input Inventory with complete coverage or an explicit gap/disposition.
|
|
437
|
+
4. Every material input statement maps to a keyed plan item or an explicit unused/conflict disposition.
|
|
438
|
+
5. Every `REQ` and material `CTRL` state has an `AC`, `EXT`, `DEC` or explicit exception.
|
|
439
|
+
6. Every in-scope interactive surface has purpose, entry/exit, regions and contained Control keys.
|
|
440
|
+
7. Every material interactive control is independently enumerated with applicable placement, behavior, state, feedback and accessibility fields.
|
|
441
|
+
8. Every declared `CTRL` independently states 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.
|
|
442
|
+
9. Every `OBL` is mandatory rather than a suggestion.
|
|
443
|
+
10. No `AC` introduces undeclared product semantics.
|
|
444
|
+
11. Every derived item identifies its basis and changes no user capability, business rule or product scope.
|
|
445
|
+
12. Every delegated item identifies `Delegated By`, its evidence basis, the known material decision criteria and the product meaning it adds.
|
|
446
|
+
13. Every delegated recommendation passed the Preference And Research Gate; current external claims use authoritative or primary sources, and any real high-risk action remains an explicit `EXT` rather than implied authorization.
|
|
447
|
+
14. Every `DEC` is justified by conflicting authority, an explicitly user-reserved choice, a missing material preference or the absence of a defensible recommendation; high impact or multiple options with known criteria alone never create a pause.
|
|
448
|
+
15. Reference or inspiration inputs are not treated as exact targets unless the user requested that authority.
|
|
449
|
+
16. Sample, framework, representative validation and full population are not confused.
|
|
450
|
+
17. Partial implementation is not worded as full completion.
|
|
451
|
+
18. Non-goals and forbidden shortcuts are explicit.
|
|
452
|
+
19. Risks concretely affect scope, verification or recovery rather than repeat a generic template.
|
|
453
|
+
20. No unsupported number, threshold, metric or conclusion appears; every delegated value cites its evidence, known preference, convention or conservative-default basis.
|
|
454
|
+
21. Every `AC` names accepted `REQ`/`CTRL`/`OBL`/`NCOMP` keys and contains exactly one Given/When/Then scenario.
|
|
455
|
+
22. Every `NCOMP` is an explicit source meaning rather than a restated Requirement or non-goal.
|
|
456
|
+
23. Every `RISK` has one exact Fact, one Affected Outcome, Basis and Consequence; ambiguity is a `DEC`.
|
|
457
|
+
24. Every decided control field remains independently traceable instead of being compressed into an aggregate state sentence.
|
|
458
|
+
25. The document contains enough incorporated meaning for later Contract authoring without requiring the original conversation; any still-required external artifact is named explicitly.
|
|
358
459
|
|
|
359
460
|
Do not emit a matrix or machine gate. End with:
|
|
360
461
|
|
|
361
462
|
```text
|
|
362
|
-
Completeness status:
|
|
363
|
-
- Ready for
|
|
364
|
-
-
|
|
365
|
-
-
|
|
366
|
-
-
|
|
463
|
+
Completeness status:
|
|
464
|
+
- Ready for Contract authoring: yes|no
|
|
465
|
+
- Input coverage gaps: none|...
|
|
466
|
+
- Surface/control coverage: complete|not applicable|...
|
|
467
|
+
- Decisions required: DEC-...
|
|
468
|
+
- Advisory implementation hints: HINT-...
|
|
469
|
+
- Unbound project facts: ...
|
|
367
470
|
```
|
|
368
471
|
|
|
369
472
|
## Non-Goals
|