project-tiny-context-harness 0.2.67 → 0.2.68

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.
@@ -1,473 +1,486 @@
1
- ---
2
- name: normal-long-task
3
- description: Use when directly invoked for ordinary long-running task acceptance planning.
4
- ---
5
-
6
- # Normal Long Task Skill
7
-
8
- ## Package-Managed Boundary
9
-
10
- This Skill is generated by `ty-context sync` and owned by the Harness package. Do not edit the generated `normal-long-task` Skill directly in a consumer project.
11
-
12
- Project-specific acceptance rules belong in `project_context/**`, `DESIGN.md` when visual design facts are durable, or a separate project-local Skill. Keep this package-managed Skill business-agnostic.
13
-
14
- ## Purpose
15
-
16
- Convert a given ordinary long-task source into a strict, project-context-aware acceptance checklist and, when requested, a generic goal-mode prompt or target-mode prompt. The output answers:
17
-
18
- ```text
19
- For this exact plan, what must be true before a future executor can honestly say the task is complete?
20
- ```
21
-
22
- This Skill defines the acceptance standard. It is not an execution framework. For a dedicated prompt that binds the finished checklist to the external Superpowers workflow, directly invoke `/superpowers-long-task` after this Skill has produced or verified the full checklist.
23
-
24
- ## Required Outputs
25
-
26
- Every completed invocation must produce:
27
-
28
- 1. A preserved copy of the plan under `tmp/ty-context/plan-acceptance/`. The copied plan is the implementation/source plan, not acceptance proof. For a two-document upstream input packet, preserve both source inputs separately when both are provided.
29
- 2. A rigorous full acceptance checklist under `tmp/ty-context/plan-acceptance/<plan-slug>-acceptance-checklist.md`. If the source contains an explicit concrete plan-provided checklist, reuse that plan-provided checklist verbatim; otherwise derive the checklist from the plan and relevant project Context. The full checklist is the complete acceptance standard and owns required automated test evidence.
30
- 3. When requested, a generic goal-mode prompt or target-mode prompt that references the plan, full checklist and local audit path without adding execution-framework-specific instructions.
31
- 4. When a local audit path is referenced, it is temporary execution/progress state only, not Context and not proof by itself.
32
-
33
- This Skill may receive one source plan or a two-document upstream input packet:
34
-
35
- - `Development Plan / 开发方案`: objective, original requirement source summary, execution direction, module/API/UI/runtime/data flow, risk boundaries, Context Delta and whether the plan is executable enough.
36
- - `Acceptance and Tests / 验收清单和测试用例`: ACs, required evidence, tests, real product paths, core paths, evidence layers, invalid evidence, completion state machine, local audit rules and blockers.
37
-
38
- These inputs are preserved source input, not proof. The development plan is execution direction. The acceptance-and-tests packet is acceptance input.
39
-
40
- Two-document upstream input packet handling is strict mode. If this Skill cannot fully parse required content from both documents, it must stop after preserving inputs, list missing required fields, and ask the user to provide a complete packet. Do not generate a checklist or goal/target-mode prompt from an incomplete two-document packet.
41
-
42
- ## Non-Scope
43
-
44
- Do not execute the plan unless the user separately asks for execution.
45
-
46
- Do not modify product code, migrations, UI, API, tests, runtime artifacts, or durable Context while using this Skill.
47
-
48
- Do not run long validation, external probes, browser flows, cloud smoke tests, database writes, deployment commands, or other side-effect commands unless the user explicitly asks for validation execution.
49
-
50
- Do not mark any goal complete. This Skill defines acceptance; it does not complete acceptance.
51
-
52
- Do not lower the plan target to match current implementation.
53
-
54
- ## Direct Invocation
55
-
56
- Use this Skill through explicit invocation:
57
-
58
- ```text
59
- /normal-long-task
60
- ```
61
-
62
- Do not rely on broad automatic keyword routing. If the user needs the Superpowers-specific long-task adapter, use `/superpowers-long-task` after this Skill has produced or verified the full checklist.
63
-
64
- ## Use Cases
65
-
66
- Use this Skill when the user asks for any of the following:
67
-
68
- - Give a plan, Markdown file, RFC, milestone, or implementation proposal an acceptance checklist.
69
- - Combine project durable Context with a long-task plan to produce acceptance criteria.
70
- - Convert a long-range task plan into a generic checklist for Codex goal/target mode.
71
- - Generate a completion definition for "execute this plan until done."
72
- - Check whether a plan is missing acceptance conditions.
73
- - Combine user objective, plan steps, project Context, code entry points, and verification paths into an executable acceptance matrix.
74
-
75
- Typical user requests after direct invocation:
76
-
77
- ```text
78
- acceptance checklist for this plan
79
- target-mode prompt for this plan
80
- completion definition for this plan
81
- long-task plan acceptance
82
- audit this plan for acceptance criteria
83
- 整理这份方案,输出一份普通目标模式文本给我
84
- 整理方案输出目标模式文本
85
- 为这份方案生成验收清单
86
- 方案验收清单
87
- 长程任务方案验收
88
- 实施计划验收清单
89
- 结合项目 context 梳理方案验收
90
- 为这份 md 生成目标模式验收文本
91
- 把这份 md 整理成验收清单
92
- ```
93
-
94
- Do not trigger from standalone broad phrases such as `target mode`, `acceptance criteria`, `completion definition`, `目标模式文本`, `验收标准`, or `完成定义` unless the same request also identifies a plan-like source.
95
-
96
- ## Input Priority
97
-
98
- Build the checklist from these sources, in order:
99
-
100
- 1. User's current instruction.
101
- 2. The referenced or pasted plan, including both documents when the user provides a two-document upstream input packet.
102
- 3. Relevant durable project Context under `project_context/**`.
103
- 4. Repository guidance such as `AGENTS.md`, `README.md`, `DESIGN.md`, and relevant local Skills.
104
- 5. Current code and tests, only to identify real surfaces, commands, routes, schemas, artifacts, entry points, and likely verification paths.
105
- 6. Existing reports or artifacts, only to identify required evidence and invalidation risks. Existing artifacts are not proof unless the user explicitly asks to audit current completion.
106
-
107
- If plan and Context conflict, preserve the conflict in the checklist. Do not silently choose the easier side.
108
-
109
- ## Upstream Input Packet
110
-
111
- When the user provides two related documents, treat them as a two-document upstream input packet when their roles match these shapes:
112
-
113
- - `Development Plan / 开发方案`: execution direction for implementation. It can contain the original requirement source or a summary of the original plan so later implementation does not shrink the target.
114
- - `Acceptance and Tests / 验收清单和测试用例`: target-mode acceptance input packet. It can contain the acceptance matrix, test requirements, real product paths, evidence layers, invalid evidence rules, state-machine rules, local audit requirements and blockers.
115
-
116
- Rules:
117
-
118
- - Do not create a third upstream artifact. Preserve the source input documents and compile a separate full checklist.
119
- - If only one plan-like source is provided, keep the existing single-plan flow.
120
- - If both documents are provided, read both before deciding whether to reuse or generate the full checklist.
121
- - The development plan is execution direction, not proof. The acceptance-and-tests document is acceptance input, not proof.
122
- - In the full checklist's `Plan source` and per-row `Source` fields, preserve whether a requirement came from the development plan, the acceptance-and-tests document, user instruction, project Context, code contract or verification risk.
123
- - This two-document upstream input packet path is strict mode. This Skill must be able to parse the objective or original requirement source summary, implementation/source plan, acceptance items, required evidence, verification methods, fail conditions, required tests or explicit test scope, core paths or explicit non-UI/runtime scope, state-machine rules, invalid evidence rules, local audit expectations and blockers or explicit no-blocker statement.
124
- - If any required field cannot be fully parsed from the two documents, stop after preserving the inputs. Do not generate a checklist or goal/target-mode prompt. Tell the user which missing required fields must be added to `Development Plan / 开发方案` or `Acceptance and Tests / 验收清单和测试用例`.
125
-
126
- ## Step 1: Materialize The Plan Under `tmp/ty-context/plan-acceptance/`
127
-
128
- Before writing the checklist, write the user-specified source input into the repository `tmp/ty-context/plan-acceptance/` directory.
129
-
130
- Rules:
131
-
132
- - If `tmp/ty-context/plan-acceptance/` does not exist, create it.
133
- - If the user references a file outside `tmp/ty-context/plan-acceptance/`, copy its current content into `tmp/ty-context/plan-acceptance/<safe-plan-name>.md`.
134
- - If the user references a file already under `tmp/ty-context/plan-acceptance/`, use that path directly unless the user asks for a new copy.
135
- - If the user pasted the plan text, write the pasted plan exactly into `tmp/ty-context/plan-acceptance/<safe-plan-name>.md`.
136
- - If the user pasted or referenced a two-document upstream input packet, write `Development Plan / 开发方案` and `Acceptance and Tests / 验收清单和测试用例` as separate preserved source inputs under stable readable filenames.
137
- - Preserve the plan content. Do not summarize, normalize, reorder, translate, or edit it while materializing it.
138
- - Use a stable readable filename derived from the plan title, source filename, or user topic. Use lowercase letters, digits, hyphens, and `.md`.
139
- - If the source plan cannot be found or read, stop and report the missing source. Do not invent a plan.
140
- - The materialized source input is temporary implementation/source input. It is not durable Context, not acceptance proof and not proof that any acceptance item passed.
141
-
142
- Recommended paths:
143
-
144
- ```text
145
- tmp/ty-context/plan-acceptance/<plan-slug>.md
146
- tmp/ty-context/plan-acceptance/<plan-slug>-acceptance-checklist.md
147
- tmp/ty-context/plan-acceptance/<plan-slug>-local-audit.md
148
- ```
149
-
150
- The local audit path is for the future target-mode executor. This Skill may require the prompt to maintain it, but the file is a temporary recovery cache and not proof that any acceptance item passed.
151
-
152
- ## Step 2: Reuse Any Explicit Plan-Provided Checklist
153
-
154
- After materializing the plan, inspect it for an explicit concrete acceptance checklist and any explicit test requirements before generating a new checklist.
155
-
156
- Plan-provided checklist reuse applies only when the plan contains a clearly labeled checklist or checklist table section, such as `Acceptance Checklist`, `Acceptance Criteria`, `验收清单`, `验收标准`, or equivalent heading, and that section contains concrete acceptance items rather than only saying that acceptance is needed.
157
-
158
- For a two-document upstream input packet, the `Acceptance and Tests / 验收清单和测试用例` document is the preferred acceptance source, but it is not automatically a frozen verbatim full checklist. Reuse it as the full checklist only if it already includes enough acceptance structure for target-mode execution: AC ID, scope, required evidence, verification method, fail condition, state-machine rules and invalid evidence rules. If any of those are missing, strict mode applies: stop, list the missing required fields, and ask the user to provide a complete acceptance-and-tests packet.
159
-
160
- When a plan-provided checklist is found:
161
-
162
- - Copy the plan-provided acceptance checklist section into `tmp/ty-context/plan-acceptance/<plan-slug>-acceptance-checklist.md` as the full checklist.
163
- - Preserve the extracted checklist verbatim, including the original language, item wording, order, IDs, Markdown tables, checkboxes, evidence notes, and blocker notes.
164
- - Do not derive, strengthen, reorder, translate, normalize, merge, split, or add acceptance items.
165
- - Do not prepend the generated `Acceptance Contract`, checklist table, self-test, or false-completion traps to the full checklist file when reusing a plan-provided checklist.
166
- - If multiple explicit checklist sections exist, copy all of them into the full checklist file in source order.
167
- - If the plan also includes explicit test requirements, copy those test requirements verbatim into the full checklist file as plan-provided acceptance evidence. These test requirements are acceptance evidence, not generated additions.
168
- - Keep the copied plan file and full checklist file separate, even if the checklist already appears inside the plan.
169
- - If the plan-provided checklist is too large for the 3850 characters target prompt budget, keep it intact in the full checklist file and make the prompt reference that file as the acceptance authority; do not invent a compact replacement checklist with new criteria.
170
- - Skip generated-checklist shaping steps for the full checklist file unless the user separately asks for a checklist audit or rewrite.
171
-
172
- When no explicit concrete plan-provided checklist exists, continue with the generated-checklist flow.
173
-
174
- When a two-document upstream input packet exists but either document is incomplete, do not continue with the generated-checklist flow. Strict mode means incomplete two-document input cannot be repaired by inference. Do not generate a checklist or goal/target-mode prompt; report the missing required fields and wait for the user to provide a complete packet.
175
-
176
- ## Step 3: Read Relevant Project Context
177
-
178
- Read enough Context and repository guidance to make acceptance criteria falsifiable:
179
-
180
- - Always start with `project_context/global.md`, `project_context/architecture.md`, and `project_context/context.toml` when present.
181
- - Follow Context graph triggers to relevant area, contract, verification, deployment, implementation-index, decision-rationale or foundation files.
182
- - Read relevant code/tests only to discover real paths, commands, schema names, UI/API surfaces, runtime entry points and artifact locations.
183
- - Do not use current implementation convenience to lower the plan's completion definition.
184
-
185
- ## Step 4: Run The Context Confirmation Gate
186
-
187
- Stop and ask the user before writing a checklist when:
188
-
189
- - The plan conflicts with durable Context and the conflict changes product scope, ownership, architecture boundary, API/schema contract, state/runtime semantics, security posture or verification design.
190
- - The plan contains broad words such as `complete`, `production-ready`, `formal`, `all`, `maximum` or `verified`, but no inventory or evidence definition can be derived.
191
- - A required external account, credential, production environment, paid service, human approval or legal/security decision is needed and the plan does not say how to handle it.
192
-
193
- If this gate triggers:
194
-
195
- - Preserve the source input under `tmp/ty-context/plan-acceptance/`.
196
- - Report the uncertainty and the Context/code evidence that exposed it.
197
- - Do not compile the final checklist, write the checklist file, or generate the goal/target-mode prompt yet.
198
-
199
- ## Step 5: Compile The Acceptance Contract
200
-
201
- Generated checklists start with:
202
-
203
- ```markdown
204
- ## Acceptance Contract
205
-
206
- - Plan source: <path>
207
- - Source role: implementation/source plan, not acceptance proof
208
- - Full checklist role: complete acceptance standard
209
- - Local audit path: tmp/ty-context/plan-acceptance/<plan-slug>-local-audit.md
210
- - Current-state claims: <which "current", "generated", "synced", "tested", "accepted" or runtime claims require current evidence>
211
- - Evidence ledger required: yes/no, with reason
212
- - Invalid completion evidence: <stale artifacts, code-only edits, partial tests, unexercised runtime, mismatched read paths or other evidence that cannot prove completion>
213
- - Hard blockers: <user/external/environment blockers that prevent completion>
214
- ```
215
-
216
- ## Step 6: Build The Full Acceptance Checklist
217
-
218
- Each generated acceptance item must include:
219
-
220
- - AC ID.
221
- - Scope.
222
- - Source.
223
- - Required evidence.
224
- - Verification method.
225
- - Fail condition.
226
- - Invalid evidence.
227
- - Status default: `unknown / not_run`.
228
-
229
- Use concrete evidence language. Avoid vague labels such as "works", "done", "handled" or "validated" unless the row defines observable proof.
230
-
231
- ## Required automated tests / 必须新增或补强的自动化测试
232
-
233
- Test requirements belong to acceptance evidence, not a fourth artifact.
234
-
235
- No fourth artifact: Do not create `tmp/ty-context/plan-acceptance/<plan-slug>-test-requirements.md`.
236
-
237
- For each required automated test, include:
238
-
239
- - test file path, or behavior-level test description when the exact path is unknowable.
240
- - test name or behavior description.
241
- - covered acceptance item.
242
- - verification command.
243
- - expected failing condition when the test is added before implementation.
244
- - expected passing condition after implementation.
245
- - failure condition.
246
- - whether the test is required proof or auxiliary evidence only.
247
-
248
- If the plan already includes explicit test requirements, use those plan-provided test requirements and preserve them in the full checklist; do not replace them with generic AC10 wording or an unrelated test list. Do not invent exact test names when only a behavior-level test description is justified.
249
-
250
- ## Hard Blocker Handling
251
-
252
- Treat any unresolved required blocker as non-completion.
253
-
254
- For every blocker, record:
255
-
256
- - what is blocked.
257
- - why local execution cannot satisfy it.
258
- - what evidence is missing.
259
- - acceptance impact.
260
- - the minimum user or external owner action needed.
261
- - fallback or deferred scope, only if the user explicitly allows it.
262
-
263
- If only locally unsatisfiable hard blockers remain, pause for the user or external owner instead of marking the goal complete.
264
-
265
- ## Minimal User Blocker Protocol
266
-
267
- Ask the user for help only after safe self-service discovery has been attempted. When asking, provide a minimal action list:
268
-
269
- - what was already tried.
270
- - the missing item.
271
- - exact page/path/field/button/menu when known.
272
- - minimum value or action needed.
273
- - sensitive information the user must not send, such as passwords, tokens, cookies, full pages, HAR files or secrets.
274
- - acceptance impact.
275
- - fallback or deferred path if any.
276
-
277
- ## Generic Acceptance Dimensions
278
-
279
- Use only dimensions that apply to the plan:
280
-
281
- - Scope inventory and non-goals.
282
- - Context, architecture and boundary conformance.
283
- - API/schema/data contract.
284
- - Runtime, worker, job, queue, artifact, checkpoint or scheduler behavior.
285
- - Console/UI/API projection and user-visible state.
286
- - Security, privacy, redaction, secret handling and auditability.
287
- - Tests, build, typecheck, lint, smoke and regression evidence.
288
- - Documentation or durable Context updates only when the plan changes long-lived facts.
289
-
290
- ## Evidence Layer Separation
291
-
292
- Separate evidence layers when they prove different things:
293
-
294
- - code implemented.
295
- - runtime configured.
296
- - runtime exercised.
297
- - artifact generated.
298
- - artifact accepted by validator.
299
- - API/UI reflects accepted evidence.
300
- - browser or user path verified when UI-facing.
301
- - final gate/check command passed.
302
-
303
- An acceptance row is not complete when the required layer is missing. Examples: runtime configured but not runtime exercised; artifact generated but not artifact accepted by validator; API changed but API/UI reflects accepted evidence is absent; fallback was not configured or exercised.
304
-
305
- ## Current-state claims
306
-
307
- Current-state claims require fresh current evidence. Existing files, old logs, stale screenshots, stale artifacts or previous command output cannot prove current completion unless the user explicitly asked for an archival audit.
308
-
309
- ## Evidence Ledger
310
-
311
- For evidence-ledger work, use:
312
-
313
- ```markdown
314
- | AC | Expected state | Current observed state | Current evidence | Evidence location / API / UI / command | Status | Invalid evidence |
315
- |---|---|---|---|---|---|---|
316
- ```
317
-
318
- Allowed statuses: `proven`, `unproven`, `stale-evidence`, `runtime-disconnected`, `implementation-drift`, `blocked`, `deferred-by-explicit-scope`.
319
-
320
- Missing ledger evidence means incomplete, not complete.
321
-
322
- ## Invalid completion evidence
323
-
324
- The checklist must reject invalid completion evidence such as:
325
-
326
- - Code-only changes without current execution or acceptance evidence.
327
- - UI/API shell behavior without the backing data, runtime or artifact evidence required by the checklist.
328
- - UI-facing acceptance without the real page path and matching user-visible state.
329
- - Stale artifacts or stale runtime evidence.
330
- - Evidence from a mismatched read path, service path, artifact path or runtime instance.
331
- - Unexercised runtime or unexercised fallback behavior.
332
- - Partial tests, smoke-only checks or dry runs when the plan requires broader current proof.
333
- - API/UI/data/test contradictions that remain unresolved.
334
-
335
- For UI-facing acceptance, component / viewmodel / mock / unit test evidence is insufficient unless the real page path is opened and the user-visible state matches the acceptance item.
336
-
337
- ## Completion State Machine
338
-
339
- The full checklist and local audit use this state rule:
340
-
341
- - Core ACs start as `unknown / not_run`.
342
- - Only fresh required evidence can mark an AC complete.
343
- - Any fresh browser / API / runtime / data / test contradiction must downgrade the affected AC and overall status and be recorded as invalidating evidence.
344
- - A previous `complete` status does not survive contradictory fresh evidence.
345
-
346
- ## Local Audit Rules
347
-
348
- The generic target prompt may ask the future executor to maintain `tmp/ty-context/plan-acceptance/<plan-slug>-local-audit.md`.
349
-
350
- The local audit is not Context, not proof by itself, not a global task manager and not a replacement for project tests, CI, review, human acceptance, Task Contract or workflow-contract `plan.md`. When a Task Contract or workflow-contract `plan.md` exists, each acceptance item execution still follows it and the repository's Tiny Context workflow contract.
351
-
352
- The audit records overall status, each AC status, current evidence, commands and results, artifact/evidence paths, blockers, missing evidence, deferred or narrowed scope and invalidating evidence.
353
-
354
- ## Scope Labels
355
-
356
- Use labels consistently:
357
-
358
- - `complete`: all required evidence exists and no contradictory current evidence remains.
359
- - `partial`: some required evidence exists but at least one required layer is missing.
360
- - `missing`: no credible evidence exists.
361
- - `blocked`: required evidence depends on user, external owner, credentials, environment or platform condition.
362
- - `invalidated`: prior evidence is contradicted by fresh browser / API / runtime / data / test contradiction.
363
-
364
- ## Conflict Handling
365
-
366
- When plan, Context, code or evidence conflict, include a conflict table:
367
-
368
- ```markdown
369
- | Conflict | Plan says | Context says | Code/evidence currently says | Acceptance impact | Required resolution |
370
- |---|---|---|---|---|---|
371
- ```
372
-
373
- Do not resolve conflict by silently following current code.
374
-
375
- ## False-Completion Traps
376
-
377
- After the checklist, include traps that a future executor must not mistake for completion.
378
-
379
- Use generic wording:
380
-
381
- ```markdown
382
- ## False-Completion Traps
383
-
384
- - <activity> is not enough unless <acceptance proof> also exists.
385
- - <partial proof> cannot prove <full acceptance item>.
386
- - <old/stale/mismatched evidence> cannot prove current completion.
387
- - <surface A> passing does not prove <surface B> unless the checklist links them.
388
- ```
389
-
390
- ## Suggested Execution Order
391
-
392
- Suggest an execution order that prioritizes the highest-risk proof first:
393
-
394
- 1. Confirm scope inventory and completion definition.
395
- 2. Confirm schemas/contracts and invalid evidence rules.
396
- 3. Implement or repair the core path.
397
- 4. Produce or inspect required runtime/artifact/API/UI evidence.
398
- 5. Run contract/integration/regression checks.
399
- 6. Run build/typecheck/lint/smoke checks.
400
- 7. Update temporary checklist status only if the user asked for status tracking.
401
-
402
- Do not put low-signal checks before the core acceptance proof when the plan is evidence-driven.
403
-
404
- ## Checklist Self-Test
405
-
406
- Every generated checklist must pass this self-test:
407
-
408
- ```markdown
409
- ## Checklist Self-Test
410
-
411
- - [ ] Every original plan section is mapped to at least one acceptance item or explicitly marked non-goal.
412
- - [ ] Every broad word such as all / maximum / complete / formal / production / verified is converted into inventory + evidence.
413
- - [ ] Every core item has a verification method.
414
- - [ ] Every evidence item defines invalid evidence.
415
- - [ ] Code, API, UI, data, runtime, artifacts, and tests are separated when they prove different things.
416
- - [ ] External blockers are separated from local remaining work.
417
- - [ ] Hard blockers are treated as non-completion, with required user/external action and pause conditions.
418
- - [ ] Current implementation was not used to reduce the user's completion definition.
419
- - [ ] The checklist can be handed to another Codex session without hidden assumptions.
420
- ```
421
-
422
- ## Generic Target-Mode Prompt Generation
423
-
424
- After reusing a plan-provided checklist or compiling a generated checklist, produce a paste-ready generic goal/target-mode prompt when the user asks for one.
425
-
426
- Hard requirements:
427
-
428
- - The prompt must be no longer than 3850 characters including line breaks. Treat 3850 as the effective hard budget and preserve information density; do not drop required paths, core acceptance categories, blocker rules, evidence rules or false-completion traps merely to be short.
429
- - The first line must identify the plan path.
430
- - Use `实施计划: <path>` for Chinese prompts and `Plan: <path>` for English prompts. The line must say the plan is the implementation/source plan and not acceptance proof.
431
- - Chinese prompts should preserve the compact role phrase `source/implementation plan,非验收证明` when space allows.
432
- - The prompt must identify the full checklist path immediately after the plan path and say it is the complete acceptance standard. Chinese prompts must include this exact sentence: `该文件是完整验收标准,验收以这个为准。完成前必须逐项检查,不满足则继续实现。` English prompts must say the full checklist is the complete acceptance standard, acceptance is judged against it, and every item must be checked before completion.
433
- - The prompt must identify a local audit path, normally `tmp/ty-context/plan-acceptance/<plan-slug>-local-audit.md`, and require the future executor to read it before resuming, keep it current during execution, and use it only as target-mode acceptance progress state, not Context or proof.
434
- - If the prompt uses a compact checklist summary, say the full checklist owns details and acceptance authority; the compact summary owns direction, priority and recovery navigation; overlap with the full checklist is allowed; conflicts are resolved in favor of the full checklist.
435
- - The prompt must require local audit status to start from `unknown / not_run`; only fresh required evidence can mark an AC complete. If any fresh browser / API / runtime / data / test contradiction appears, downgrade the affected AC and overall status and record invalidating evidence.
436
- - The prompt must state that UI-facing acceptance requires a real page path and matching user-visible state; component / viewmodel / mock / unit test evidence is auxiliary unless the full checklist explicitly says otherwise.
437
- - The prompt must preserve hard-blocker semantics: if only locally unsatisfiable hard blockers remain, pause for the user or external owner instead of marking the goal complete.
438
- - The prompt must say that local audit is not Context, not product-quality proof, not a global task manager, and not a replacement for project tests, CI, review, human acceptance, Task Contract or workflow-contract `plan.md`.
439
- - Do not include explanatory preface inside the prompt.
440
- - Do not include Markdown tables inside the prompt if they make it too long.
441
- - If the full checklist is too large, write the full checklist to `tmp/ty-context/plan-acceptance/<plan-slug>-acceptance-checklist.md`, then compress the goal/target-mode prompt by tightening wording and referring to the full checklist path while preserving required paths, core AC categories, blocker/evidence rules and false-completion traps.
442
-
443
- ## Final Response Requirements
444
-
445
- For completed checklist runs, the final response must include:
446
-
447
- - `tmp/ty-context/plan-acceptance/` plan path.
448
- - Full checklist path if a full checklist file was written.
449
- - Whether the full checklist was reused from a plan-provided checklist or generated by this Skill.
450
- - The paste-ready goal/target-mode prompt in a code block when requested.
451
- - Any unresolved ambiguity that affects checklist accuracy.
452
-
453
- If the Context confirmation gate triggers, the response must ask for the needed confirmation instead of including the checklist or goal/target-mode prompt.
454
-
455
- Do not claim that any acceptance item has passed unless the user explicitly asked for a current completion audit and current evidence was inspected.
456
-
457
- ## Forbidden Behaviors
458
-
459
- Do not include concrete business-domain logic in this Skill.
460
-
461
- Do not hardcode project-specific provider names, API names, UI names, artifact paths, schemas, statuses, or commands in this Skill.
462
-
463
- Do not execute the generated goal/target-mode prompt.
464
-
465
- Do not use the checklist to mark the task complete.
466
-
467
- Do not hide missing source files, ambiguous plan scope, or external blockers.
468
-
469
- Do not rewrite the user's plan while copying it into `tmp/ty-context/plan-acceptance/`.
470
-
471
- Do not rewrite, strengthen, reorder, translate, normalize, or add items to a plan-provided checklist when the plan already includes an explicit concrete checklist.
472
-
473
- Do not use a short sample, stale artifact, old result, or current implementation convenience to reduce a plan that asked for full completion.
1
+ ---
2
+ name: normal-long-task
3
+ description: Use when directly invoked for ordinary long-running task acceptance planning.
4
+ ---
5
+
6
+ # Normal Long Task Skill
7
+
8
+ ## Package-Managed Boundary
9
+
10
+ This Skill is generated by `ty-context sync` and owned by the Harness package. Do not edit the generated `normal-long-task` Skill directly in a consumer project.
11
+
12
+ Project-specific acceptance rules belong in `project_context/**`, `DESIGN.md` when visual design facts are durable, or a separate project-local Skill. Keep this package-managed Skill business-agnostic.
13
+
14
+ ## Purpose
15
+
16
+ Convert a given ordinary long-task source into a strict, project-context-aware acceptance checklist and, when requested, a generic goal-mode prompt or target-mode prompt. The output answers:
17
+
18
+ ```text
19
+ For this exact plan, what must be true before a future executor can honestly say the task is complete?
20
+ ```
21
+
22
+ This Skill defines the acceptance standard. It is not an execution framework. For a dedicated prompt that binds the finished checklist to the external Superpowers workflow, directly invoke `/superpowers-long-task` after this Skill has produced or verified the full checklist.
23
+
24
+ ## Required Outputs
25
+
26
+ Every completed invocation must produce:
27
+
28
+ 1. A preserved copy of the plan under `tmp/ty-context/plan-acceptance/`. The copied plan is the implementation/source plan, not acceptance proof. For a two-document upstream input packet, preserve both source inputs separately when both are provided.
29
+ 2. A rigorous full acceptance checklist under `tmp/ty-context/plan-acceptance/<plan-slug>-acceptance-checklist.md`. If the source contains an explicit concrete plan-provided checklist, reuse that plan-provided checklist verbatim; otherwise derive the checklist from the plan and relevant project Context. The full checklist is the complete acceptance standard and owns required automated test evidence.
30
+ 3. When requested, a generic goal-mode prompt or target-mode prompt that references the plan, full checklist and local audit path without adding execution-framework-specific instructions.
31
+ 4. When a local audit path is referenced, it is temporary execution/progress state only, not Context and not proof by itself.
32
+
33
+ This Skill may receive one source plan or a two-document upstream input packet:
34
+
35
+ - `Development Plan / 开发方案`: objective, original requirement source summary, execution direction, module/API/UI/runtime/data flow, risk boundaries, Context Delta and whether the plan is executable enough.
36
+ - `Acceptance and Tests / 验收清单和测试用例`: ACs, required evidence, tests, real product paths, core paths, evidence layers, invalid evidence, completion state machine, local audit rules and blockers.
37
+
38
+ These inputs are preserved source input, not proof. The development plan is execution direction. The acceptance-and-tests packet is acceptance input.
39
+
40
+ Two-document upstream input packet handling is strict mode. If this Skill cannot fully parse required content from both documents, it must stop after preserving inputs, list missing required fields, and ask the user to provide a complete packet. Do not generate a checklist or goal/target-mode prompt from an incomplete two-document packet.
41
+
42
+ ## Non-Scope
43
+
44
+ Do not execute the plan unless the user separately asks for execution.
45
+
46
+ Do not modify product code, migrations, UI, API, tests, runtime artifacts, or durable Context while using this Skill.
47
+
48
+ Do not run long validation, external probes, browser flows, cloud smoke tests, database writes, deployment commands, or other side-effect commands unless the user explicitly asks for validation execution.
49
+
50
+ Do not mark any goal complete. This Skill defines acceptance; it does not complete acceptance.
51
+
52
+ Do not lower the plan target to match current implementation.
53
+
54
+ ## Direct Invocation
55
+
56
+ Use this Skill through explicit invocation:
57
+
58
+ ```text
59
+ /normal-long-task
60
+ ```
61
+
62
+ Do not rely on broad automatic keyword routing. If the user needs the Superpowers-specific long-task adapter, use `/superpowers-long-task` after this Skill has produced or verified the full checklist.
63
+
64
+ ## Use Cases
65
+
66
+ Use this Skill when the user asks for any of the following:
67
+
68
+ - Give a plan, Markdown file, RFC, milestone, or implementation proposal an acceptance checklist.
69
+ - Combine project durable Context with a long-task plan to produce acceptance criteria.
70
+ - Convert a long-range task plan into a generic checklist for Codex goal/target mode.
71
+ - Generate a completion definition for "execute this plan until done."
72
+ - Check whether a plan is missing acceptance conditions.
73
+ - Combine user objective, plan steps, project Context, code entry points, and verification paths into an executable acceptance matrix.
74
+
75
+ Typical user requests after direct invocation:
76
+
77
+ ```text
78
+ acceptance checklist for this plan
79
+ target-mode prompt for this plan
80
+ completion definition for this plan
81
+ long-task plan acceptance
82
+ audit this plan for acceptance criteria
83
+ 整理这份方案,输出一份普通目标模式文本给我
84
+ 整理方案输出目标模式文本
85
+ 为这份方案生成验收清单
86
+ 方案验收清单
87
+ 长程任务方案验收
88
+ 实施计划验收清单
89
+ 结合项目 context 梳理方案验收
90
+ 为这份 md 生成目标模式验收文本
91
+ 把这份 md 整理成验收清单
92
+ ```
93
+
94
+ Do not trigger from standalone broad phrases such as `target mode`, `acceptance criteria`, `completion definition`, `目标模式文本`, `验收标准`, or `完成定义` unless the same request also identifies a plan-like source.
95
+
96
+ ## Input Priority
97
+
98
+ Build the checklist from these sources, in order:
99
+
100
+ 1. User's current instruction.
101
+ 2. The referenced or pasted plan, including both documents when the user provides a two-document upstream input packet.
102
+ 3. Relevant durable project Context under `project_context/**`.
103
+ 4. Repository guidance such as `AGENTS.md`, `README.md`, `DESIGN.md`, and relevant local Skills.
104
+ 5. Current code and tests, only to identify real surfaces, commands, routes, schemas, artifacts, entry points, and likely verification paths.
105
+ 6. Existing reports or artifacts, only to identify required evidence and invalidation risks. Existing artifacts are not proof unless the user explicitly asks to audit current completion.
106
+
107
+ If plan and Context conflict, preserve the conflict in the checklist. Do not silently choose the easier side.
108
+
109
+ ## Upstream Input Packet
110
+
111
+ When the user provides two related documents, treat them as a two-document upstream input packet when their roles match these shapes:
112
+
113
+ - `Development Plan / 开发方案`: execution direction for implementation. It can contain the original requirement source or a summary of the original plan so later implementation does not shrink the target.
114
+ - `Acceptance and Tests / 验收清单和测试用例`: target-mode acceptance input packet. It can contain the acceptance matrix, test requirements, real product paths, evidence layers, invalid evidence rules, state-machine rules, local audit requirements and blockers.
115
+
116
+ Rules:
117
+
118
+ - Do not create a third upstream artifact. Preserve the source input documents and compile a separate full checklist.
119
+ - If only one plan-like source is provided, keep the existing single-plan flow.
120
+ - If both documents are provided, read both before deciding whether to reuse or generate the full checklist.
121
+ - The development plan is execution direction, not proof. The acceptance-and-tests document is acceptance input, not proof.
122
+ - In the full checklist's `Plan source` and per-row `Source` fields, preserve whether a requirement came from the development plan, the acceptance-and-tests document, user instruction, project Context, code contract or verification risk.
123
+ - This two-document upstream input packet path is strict mode. This Skill must be able to parse the objective or original requirement source summary, implementation/source plan, acceptance items, required evidence, verification methods, fail conditions, required tests or explicit test scope, core paths or explicit non-UI/runtime scope, state-machine rules, invalid evidence rules, local audit expectations and blockers or explicit no-blocker statement.
124
+ - If any required field cannot be fully parsed from the two documents, stop after preserving the inputs. Do not generate a checklist or goal/target-mode prompt. Tell the user which missing required fields must be added to `Development Plan / 开发方案` or `Acceptance and Tests / 验收清单和测试用例`.
125
+
126
+ ## Step 1: Materialize The Plan Under `tmp/ty-context/plan-acceptance/`
127
+
128
+ Before writing the checklist, write the user-specified source input into the repository `tmp/ty-context/plan-acceptance/` directory.
129
+
130
+ Rules:
131
+
132
+ - If `tmp/ty-context/plan-acceptance/` does not exist, create it.
133
+ - If the user references a file outside `tmp/ty-context/plan-acceptance/`, copy its current content into `tmp/ty-context/plan-acceptance/<safe-plan-name>.md`.
134
+ - If the user references a file already under `tmp/ty-context/plan-acceptance/`, use that path directly unless the user asks for a new copy.
135
+ - If the user pasted the plan text, write the pasted plan exactly into `tmp/ty-context/plan-acceptance/<safe-plan-name>.md`.
136
+ - If the user pasted or referenced a two-document upstream input packet, write `Development Plan / 开发方案` and `Acceptance and Tests / 验收清单和测试用例` as separate preserved source inputs under stable readable filenames.
137
+ - Preserve the plan content. Do not summarize, normalize, reorder, translate, or edit it while materializing it.
138
+ - Use a stable readable filename derived from the plan title, source filename, or user topic. Use lowercase letters, digits, hyphens, and `.md`.
139
+ - If the source plan cannot be found or read, stop and report the missing source. Do not invent a plan.
140
+ - The materialized source input is temporary implementation/source input. It is not durable Context, not acceptance proof and not proof that any acceptance item passed.
141
+
142
+ Recommended paths:
143
+
144
+ ```text
145
+ tmp/ty-context/plan-acceptance/<plan-slug>.md
146
+ tmp/ty-context/plan-acceptance/<plan-slug>-acceptance-checklist.md
147
+ tmp/ty-context/plan-acceptance/<plan-slug>-local-audit.md
148
+ ```
149
+
150
+ The local audit path is for the future target-mode executor. This Skill may require the prompt to maintain it, but the file is a temporary recovery cache and not proof that any acceptance item passed.
151
+
152
+ ## Step 2: Reuse Any Explicit Plan-Provided Checklist
153
+
154
+ After materializing the plan, inspect it for an explicit concrete acceptance checklist and any explicit test requirements before generating a new checklist.
155
+
156
+ Plan-provided checklist reuse applies only when the plan contains a clearly labeled checklist or checklist table section, such as `Acceptance Checklist`, `Acceptance Criteria`, `验收清单`, `验收标准`, or equivalent heading, and that section contains concrete acceptance items rather than only saying that acceptance is needed.
157
+
158
+ For a two-document upstream input packet, the `Acceptance and Tests / 验收清单和测试用例` document is the preferred acceptance source, but it is not automatically a frozen verbatim full checklist. Reuse it as the full checklist only if it already includes enough acceptance structure for target-mode execution: AC ID, scope, required evidence, verification method, fail condition, state-machine rules and invalid evidence rules. If any of those are missing, strict mode applies: stop, list the missing required fields, and ask the user to provide a complete acceptance-and-tests packet.
159
+
160
+ When a plan-provided checklist is found:
161
+
162
+ - Copy the plan-provided acceptance checklist section into `tmp/ty-context/plan-acceptance/<plan-slug>-acceptance-checklist.md` as the full checklist.
163
+ - Preserve the extracted checklist verbatim, including the original language, item wording, order, IDs, Markdown tables, checkboxes, evidence notes, and blocker notes.
164
+ - Do not derive, strengthen, reorder, translate, normalize, merge, split, or add acceptance items.
165
+ - Do not prepend the generated `Acceptance Contract`, checklist table, self-test, or false-completion traps to the full checklist file when reusing a plan-provided checklist.
166
+ - If multiple explicit checklist sections exist, copy all of them into the full checklist file in source order.
167
+ - If the plan also includes explicit test requirements, copy those test requirements verbatim into the full checklist file as plan-provided acceptance evidence. These test requirements are acceptance evidence, not generated additions.
168
+ - Keep the copied plan file and full checklist file separate, even if the checklist already appears inside the plan.
169
+ - If the plan-provided checklist is too large for the 3850 characters target prompt budget, keep it intact in the full checklist file and make the prompt reference that file as the acceptance authority; do not invent a compact replacement checklist with new criteria.
170
+ - Skip generated-checklist shaping steps for the full checklist file unless the user separately asks for a checklist audit or rewrite.
171
+
172
+ When no explicit concrete plan-provided checklist exists, continue with the generated-checklist flow.
173
+
174
+ When a two-document upstream input packet exists but either document is incomplete, do not continue with the generated-checklist flow. Strict mode means incomplete two-document input cannot be repaired by inference. Do not generate a checklist or goal/target-mode prompt; report the missing required fields and wait for the user to provide a complete packet.
175
+
176
+ ## Step 3: Read Relevant Project Context
177
+
178
+ Read enough Context and repository guidance to make acceptance criteria falsifiable:
179
+
180
+ - Always start with `project_context/global.md`, `project_context/architecture.md`, and `project_context/context.toml` when present.
181
+ - Follow Context graph triggers to relevant area, contract, verification, deployment, implementation-index, decision-rationale or foundation files.
182
+ - Read relevant code/tests only to discover real paths, commands, schema names, UI/API surfaces, runtime entry points and artifact locations.
183
+ - Do not use current implementation convenience to lower the plan's completion definition.
184
+
185
+ ## Step 4: Run The Context Confirmation Gate
186
+
187
+ Stop and ask the user before writing a checklist when:
188
+
189
+ - The plan conflicts with durable Context and the conflict changes product scope, ownership, architecture boundary, API/schema contract, state/runtime semantics, security posture or verification design.
190
+ - The plan contains broad words such as `complete`, `production-ready`, `formal`, `all`, `maximum` or `verified`, but no inventory or evidence definition can be derived.
191
+ - A required external account, credential, production environment, paid service, human approval or legal/security decision is needed and the plan does not say how to handle it.
192
+
193
+ If this gate triggers:
194
+
195
+ - Preserve the source input under `tmp/ty-context/plan-acceptance/`.
196
+ - Report the uncertainty and the Context/code evidence that exposed it.
197
+ - Do not compile the final checklist, write the checklist file, or generate the goal/target-mode prompt yet.
198
+
199
+ ## Step 5: Compile The Acceptance Contract
200
+
201
+ Generated checklists start with:
202
+
203
+ ```markdown
204
+ ## Acceptance Contract
205
+
206
+ - Plan source: <path>
207
+ - Source role: implementation/source plan, not acceptance proof
208
+ - Full checklist role: complete acceptance standard
209
+ - Local audit path: tmp/ty-context/plan-acceptance/<plan-slug>-local-audit.md
210
+ - Current-state claims: <which "current", "generated", "synced", "tested", "accepted" or runtime claims require current evidence>
211
+ - Evidence ledger required: yes/no, with reason
212
+ - Invalid completion evidence: <stale artifacts, code-only edits, partial tests, unexercised runtime, mismatched read paths or other evidence that cannot prove completion>
213
+ - Hard blockers: <user/external/environment blockers that prevent completion>
214
+ ```
215
+
216
+ ## Step 6: Build The Full Acceptance Checklist
217
+
218
+ Each generated acceptance item must include:
219
+
220
+ - AC ID.
221
+ - Scope.
222
+ - Source.
223
+ - Required evidence.
224
+ - Verification method.
225
+ - Fail condition.
226
+ - Invalid evidence.
227
+ - Status default: `unknown / not_run`.
228
+
229
+ Use concrete evidence language. Avoid vague labels such as "works", "done", "handled" or "validated" unless the row defines observable proof.
230
+
231
+ ## Required automated tests / 必须新增或补强的自动化测试
232
+
233
+ Test requirements belong to acceptance evidence, not a fourth artifact.
234
+
235
+ No fourth artifact: Do not create `tmp/ty-context/plan-acceptance/<plan-slug>-test-requirements.md`.
236
+
237
+ For each required automated test, include:
238
+
239
+ - test file path, or behavior-level test description when the exact path is unknowable.
240
+ - test name or behavior description.
241
+ - covered acceptance item.
242
+ - verification command.
243
+ - expected failing condition when the test is added before implementation.
244
+ - expected passing condition after implementation.
245
+ - failure condition.
246
+ - whether the test is required proof or auxiliary evidence only.
247
+
248
+ If the plan already includes explicit test requirements, use those plan-provided test requirements and preserve them in the full checklist; do not replace them with generic AC10 wording or an unrelated test list. Do not invent exact test names when only a behavior-level test description is justified.
249
+
250
+ ## Hard Blocker Handling
251
+
252
+ Treat any unresolved required blocker as non-completion.
253
+
254
+ For every blocker, record:
255
+
256
+ - what is blocked.
257
+ - why local execution cannot satisfy it.
258
+ - what evidence is missing.
259
+ - acceptance impact.
260
+ - the minimum user or external owner action needed.
261
+ - fallback or deferred scope, only if the user explicitly allows it.
262
+
263
+ If only locally unsatisfiable hard blockers remain, pause for the user or external owner instead of marking the goal complete.
264
+
265
+ ## Autonomous Progress Protocol
266
+
267
+ The generated target-mode prompt must require maximum safe autonomous progress within current platform, repository, tool and user-authorized permission boundaries. Do not ask the user for work the executor can safely discover, run, inspect or verify itself.
268
+
269
+ The generated target-mode prompt must inherit current repository/global `AGENTS.md` or agent-instruction permission policy. Authorized `sudo` / `gsudo` / administrator elevation is not a user blocker; the executor must try it before pausing. Pause only if elevation is unavailable, fails, or requires user/system authorization.
270
+
271
+ Pause only for locally unsatisfiable hard blockers such as missing accounts, credentials, production access, paid services, legal/security approval, user-only browser sessions or sensitive fields the executor cannot access safely.
272
+
273
+ ## Minimal User Blocker Protocol
274
+
275
+ Ask the user for help only after safe self-service discovery has been attempted. When asking, provide a minimal action list:
276
+
277
+ - what was already tried.
278
+ - the missing item.
279
+ - exact page, system, command or owner to open/contact.
280
+ - exact page/path/field/button/menu when known.
281
+ - minimum value or action needed.
282
+ - how to redact or avoid sending sensitive values.
283
+ - sensitive information the user must not send, such as passwords, tokens, cookies, full pages, HAR files or secrets.
284
+ - what the executor will do immediately after receiving the input.
285
+ - acceptance impact.
286
+ - fallback or deferred path if any.
287
+
288
+ ## Generic Acceptance Dimensions
289
+
290
+ Use only dimensions that apply to the plan:
291
+
292
+ - Scope inventory and non-goals.
293
+ - Context, architecture and boundary conformance.
294
+ - API/schema/data contract.
295
+ - Runtime, worker, job, queue, artifact, checkpoint or scheduler behavior.
296
+ - Console/UI/API projection and user-visible state.
297
+ - Security, privacy, redaction, secret handling and auditability.
298
+ - Tests, build, typecheck, lint, smoke and regression evidence.
299
+ - Documentation or durable Context updates only when the plan changes long-lived facts.
300
+
301
+ ## Evidence Layer Separation
302
+
303
+ Separate evidence layers when they prove different things:
304
+
305
+ - code implemented.
306
+ - runtime configured.
307
+ - runtime exercised.
308
+ - artifact generated.
309
+ - artifact accepted by validator.
310
+ - API/UI reflects accepted evidence.
311
+ - browser or user path verified when UI-facing.
312
+ - final gate/check command passed.
313
+
314
+ An acceptance row is not complete when the required layer is missing. Examples: runtime configured but not runtime exercised; artifact generated but not artifact accepted by validator; API changed but API/UI reflects accepted evidence is absent; fallback was not configured or exercised.
315
+
316
+ ## Current-state claims
317
+
318
+ Current-state claims require fresh current evidence. Existing files, old logs, stale screenshots, stale artifacts or previous command output cannot prove current completion unless the user explicitly asked for an archival audit.
319
+
320
+ ## Evidence Ledger
321
+
322
+ For evidence-ledger work, use:
323
+
324
+ ```markdown
325
+ | AC | Expected state | Current observed state | Current evidence | Evidence location / API / UI / command | Status | Invalid evidence |
326
+ |---|---|---|---|---|---|---|
327
+ ```
328
+
329
+ Allowed statuses: `proven`, `unproven`, `stale-evidence`, `runtime-disconnected`, `implementation-drift`, `blocked`, `deferred-by-explicit-scope`.
330
+
331
+ Missing ledger evidence means incomplete, not complete.
332
+
333
+ ## Invalid completion evidence
334
+
335
+ The checklist must reject invalid completion evidence such as:
336
+
337
+ - Code-only changes without current execution or acceptance evidence.
338
+ - UI/API shell behavior without the backing data, runtime or artifact evidence required by the checklist.
339
+ - UI-facing acceptance without the real page path and matching user-visible state.
340
+ - Stale artifacts or stale runtime evidence.
341
+ - Evidence from a mismatched read path, service path, artifact path or runtime instance.
342
+ - Unexercised runtime or unexercised fallback behavior.
343
+ - Partial tests, smoke-only checks or dry runs when the plan requires broader current proof.
344
+ - API/UI/data/test contradictions that remain unresolved.
345
+
346
+ For UI-facing acceptance, component / viewmodel / mock / unit test evidence is insufficient unless the real page path is opened and the user-visible state matches the acceptance item.
347
+
348
+ ## Completion State Machine
349
+
350
+ The full checklist and local audit use this state rule:
351
+
352
+ - Core ACs start as `unknown / not_run`.
353
+ - Only fresh required evidence can mark an AC complete.
354
+ - Any fresh browser / API / runtime / data / test contradiction must downgrade the affected AC and overall status and be recorded as invalidating evidence.
355
+ - A previous `complete` status does not survive contradictory fresh evidence.
356
+
357
+ ## Local Audit Rules
358
+
359
+ The generic target prompt may ask the future executor to maintain `tmp/ty-context/plan-acceptance/<plan-slug>-local-audit.md`.
360
+
361
+ The local audit is not Context, not proof by itself, not a global task manager and not a replacement for project tests, CI, review, human acceptance, Task Contract or workflow-contract `plan.md`. When a Task Contract or workflow-contract `plan.md` exists, each acceptance item execution still follows it and the repository's Tiny Context workflow contract.
362
+
363
+ The audit records overall status, each AC status, current evidence, commands and results, artifact/evidence paths, blockers, missing evidence, deferred or narrowed scope and invalidating evidence.
364
+
365
+ ## Scope Labels
366
+
367
+ Use labels consistently:
368
+
369
+ - `complete`: all required evidence exists and no contradictory current evidence remains.
370
+ - `partial`: some required evidence exists but at least one required layer is missing.
371
+ - `missing`: no credible evidence exists.
372
+ - `blocked`: required evidence depends on user, external owner, credentials, environment or platform condition.
373
+ - `invalidated`: prior evidence is contradicted by fresh browser / API / runtime / data / test contradiction.
374
+
375
+ ## Conflict Handling
376
+
377
+ When plan, Context, code or evidence conflict, include a conflict table:
378
+
379
+ ```markdown
380
+ | Conflict | Plan says | Context says | Code/evidence currently says | Acceptance impact | Required resolution |
381
+ |---|---|---|---|---|---|
382
+ ```
383
+
384
+ Do not resolve conflict by silently following current code.
385
+
386
+ ## False-Completion Traps
387
+
388
+ After the checklist, include traps that a future executor must not mistake for completion.
389
+
390
+ Use generic wording:
391
+
392
+ ```markdown
393
+ ## False-Completion Traps
394
+
395
+ - <activity> is not enough unless <acceptance proof> also exists.
396
+ - <partial proof> cannot prove <full acceptance item>.
397
+ - <old/stale/mismatched evidence> cannot prove current completion.
398
+ - <surface A> passing does not prove <surface B> unless the checklist links them.
399
+ ```
400
+
401
+ ## Suggested Execution Order
402
+
403
+ Suggest an execution order that prioritizes the highest-risk proof first:
404
+
405
+ 1. Confirm scope inventory and completion definition.
406
+ 2. Confirm schemas/contracts and invalid evidence rules.
407
+ 3. Implement or repair the core path.
408
+ 4. Produce or inspect required runtime/artifact/API/UI evidence.
409
+ 5. Run contract/integration/regression checks.
410
+ 6. Run build/typecheck/lint/smoke checks.
411
+ 7. Update temporary checklist status only if the user asked for status tracking.
412
+
413
+ Do not put low-signal checks before the core acceptance proof when the plan is evidence-driven.
414
+
415
+ ## Checklist Self-Test
416
+
417
+ Every generated checklist must pass this self-test:
418
+
419
+ ```markdown
420
+ ## Checklist Self-Test
421
+
422
+ - [ ] Every original plan section is mapped to at least one acceptance item or explicitly marked non-goal.
423
+ - [ ] Every broad word such as all / maximum / complete / formal / production / verified is converted into inventory + evidence.
424
+ - [ ] Every core item has a verification method.
425
+ - [ ] Every evidence item defines invalid evidence.
426
+ - [ ] Code, API, UI, data, runtime, artifacts, and tests are separated when they prove different things.
427
+ - [ ] External blockers are separated from local remaining work.
428
+ - [ ] Hard blockers are treated as non-completion, with required user/external action and pause conditions.
429
+ - [ ] Current implementation was not used to reduce the user's completion definition.
430
+ - [ ] The checklist can be handed to another Codex session without hidden assumptions.
431
+ ```
432
+
433
+ ## Generic Target-Mode Prompt Generation
434
+
435
+ After reusing a plan-provided checklist or compiling a generated checklist, produce a paste-ready generic goal/target-mode prompt when the user asks for one.
436
+
437
+ Hard requirements:
438
+
439
+ - The prompt must be no longer than 3850 characters including line breaks. Treat 3850 as the effective hard budget and preserve information density; do not drop required paths, core acceptance categories, blocker rules, evidence rules or false-completion traps merely to be short.
440
+ - The first line must identify the plan path.
441
+ - Use `实施计划: <path>` for Chinese prompts and `Plan: <path>` for English prompts. The line must say the plan is the implementation/source plan and not acceptance proof.
442
+ - Chinese prompts should preserve the compact role phrase `source/implementation plan,非验收证明` when space allows.
443
+ - The prompt must identify the full checklist path immediately after the plan path and say it is the complete acceptance standard. Chinese prompts must include this exact sentence: `该文件是完整验收标准,验收以这个为准。完成前必须逐项检查,不满足则继续实现。` English prompts must say the full checklist is the complete acceptance standard, acceptance is judged against it, and every item must be checked before completion.
444
+ - The prompt must identify a local audit path, normally `tmp/ty-context/plan-acceptance/<plan-slug>-local-audit.md`, and require the future executor to read it before resuming, keep it current during execution, and use it only as target-mode acceptance progress state, not Context or proof.
445
+ - If the prompt uses a compact checklist summary, say the full checklist owns details and acceptance authority; the compact summary owns direction, priority and recovery navigation; overlap with the full checklist is allowed; conflicts are resolved in favor of the full checklist.
446
+ - The prompt must require local audit status to start from `unknown / not_run`; only fresh required evidence can mark an AC complete. If any fresh browser / API / runtime / data / test contradiction appears, downgrade the affected AC and overall status and record invalidating evidence.
447
+ - The prompt must state that UI-facing acceptance requires a real page path and matching user-visible state; component / viewmodel / mock / unit test evidence is auxiliary unless the full checklist explicitly says otherwise.
448
+ - The prompt must require maximum safe autonomous progress within current platform, repository, tool and user-authorized permission boundaries. Do not ask the user for work the executor can safely discover, run, inspect or verify itself. If pausing for a locally unsatisfiable hard blocker, provide the minimum user action list: exact page/system/command/owner, field or value location, redaction guidance, values not to send and what the executor will do next.
449
+ - The prompt must inherit current repository/global `AGENTS.md` or agent-instruction permission policy. Authorized `sudo` / `gsudo` / administrator elevation is not a user blocker; the executor must try it before pausing. Pause only if elevation is unavailable, fails, or requires user/system authorization.
450
+ - The prompt must preserve hard-blocker semantics: if only locally unsatisfiable hard blockers remain, pause for the user or external owner instead of marking the goal complete.
451
+ - The prompt must say that local audit is not Context, not product-quality proof, not a global task manager, and not a replacement for project tests, CI, review, human acceptance, Task Contract or workflow-contract `plan.md`.
452
+ - Do not include explanatory preface inside the prompt.
453
+ - Do not include Markdown tables inside the prompt if they make it too long.
454
+ - If the full checklist is too large, write the full checklist to `tmp/ty-context/plan-acceptance/<plan-slug>-acceptance-checklist.md`, then compress the goal/target-mode prompt by tightening wording and referring to the full checklist path while preserving required paths, core AC categories, blocker/evidence rules and false-completion traps.
455
+
456
+ ## Final Response Requirements
457
+
458
+ For completed checklist runs, the final response must include:
459
+
460
+ - `tmp/ty-context/plan-acceptance/` plan path.
461
+ - Full checklist path if a full checklist file was written.
462
+ - Whether the full checklist was reused from a plan-provided checklist or generated by this Skill.
463
+ - The paste-ready goal/target-mode prompt in a code block when requested.
464
+ - Any unresolved ambiguity that affects checklist accuracy.
465
+
466
+ If the Context confirmation gate triggers, the response must ask for the needed confirmation instead of including the checklist or goal/target-mode prompt.
467
+
468
+ Do not claim that any acceptance item has passed unless the user explicitly asked for a current completion audit and current evidence was inspected.
469
+
470
+ ## Forbidden Behaviors
471
+
472
+ Do not include concrete business-domain logic in this Skill.
473
+
474
+ Do not hardcode project-specific provider names, API names, UI names, artifact paths, schemas, statuses, or commands in this Skill.
475
+
476
+ Do not execute the generated goal/target-mode prompt.
477
+
478
+ Do not use the checklist to mark the task complete.
479
+
480
+ Do not hide missing source files, ambiguous plan scope, or external blockers.
481
+
482
+ Do not rewrite the user's plan while copying it into `tmp/ty-context/plan-acceptance/`.
483
+
484
+ Do not rewrite, strengthen, reorder, translate, normalize, or add items to a plan-provided checklist when the plan already includes an explicit concrete checklist.
485
+
486
+ Do not use a short sample, stale artifact, old result, or current implementation convenience to reduce a plan that asked for full completion.