@1aboveio/skills 1.0.20 → 1.0.21

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (76) hide show
  1. package/.codex-plugin/plugin.json +1 -1
  2. package/.codex-plugin/resources.json +138 -138
  3. package/package.json +4 -4
  4. package/skills/app-dev/airflow/SKILL.md +1 -1
  5. package/skills/app-dev/android-development/SKILL.md +1 -1
  6. package/skills/app-dev/app-debug/SKILL.md +1 -1
  7. package/skills/app-dev/better-auth/SKILL.md +1 -1
  8. package/skills/app-dev/data-catalog/SKILL.md +1 -1
  9. package/skills/app-dev/data-quality/SKILL.md +1 -1
  10. package/skills/app-dev/ios-foundation/SKILL.md +1 -1
  11. package/skills/app-dev/maestro/SKILL.md +8 -1
  12. package/skills/app-dev/monorepo/SKILL.md +1 -1
  13. package/skills/app-dev/nextjs-fullstack/SKILL.md +1 -1
  14. package/skills/app-dev/prisma-setup/SKILL.md +1 -1
  15. package/skills/app-dev/pyspark/SKILL.md +1 -1
  16. package/skills/app-dev/python-backend/SKILL.md +1 -1
  17. package/skills/app-dev/shadcn/SKILL.md +1 -1
  18. package/skills/app-dev/zod-v4/SKILL.md +1 -1
  19. package/skills/cicd/cloud-build/SKILL.md +1 -1
  20. package/skills/cicd/cloud-debug/SKILL.md +1 -1
  21. package/skills/cicd/cloud-deploy/SKILL.md +1 -1
  22. package/skills/cicd/docker/SKILL.md +1 -1
  23. package/skills/cicd/github-actions/SKILL.md +5 -1
  24. package/skills/cicd/github-actions/references/pipeline.md +26 -0
  25. package/skills/cicd/github-flow/SKILL.md +1 -1
  26. package/skills/cicd/google-cloud/SKILL.md +1 -1
  27. package/skills/cicd/mergify/SKILL.md +1 -1
  28. package/skills/cicd/podman/SKILL.md +1 -1
  29. package/skills/content/article-review/SKILL.md +1 -1
  30. package/skills/content/article-to-image/SKILL.md +1 -1
  31. package/skills/content/flowchart-svg/SKILL.md +1 -1
  32. package/skills/content/image-gen/SKILL.md +1 -1
  33. package/skills/content/mermaid/SKILL.md +1 -1
  34. package/skills/content/wechat-article-writer/SKILL.md +1 -1
  35. package/skills/content/wechat-publisher/SKILL.md +1 -1
  36. package/skills/content/wechat-search/SKILL.md +1 -1
  37. package/skills/content/xai-search/SKILL.md +1 -1
  38. package/skills/core/distill-writing/SKILL.md +1 -1
  39. package/skills/core/doc-to-md/SKILL.md +1 -1
  40. package/skills/core/editorial-review/SKILL.md +1 -1
  41. package/skills/core/house-style/SKILL.md +1 -1
  42. package/skills/core/plain-language/SKILL.md +1 -1
  43. package/skills/core/polish-cn/SKILL.md +1 -1
  44. package/skills/core/reg-parser/SKILL.md +1 -1
  45. package/skills/core/terminology/SKILL.md +1 -1
  46. package/skills/core/write-doc/SKILL.md +1 -1
  47. package/skills/core/write-report/SKILL.md +1 -1
  48. package/skills/engineering/better-review/SKILL.md +1 -1
  49. package/skills/engineering/better-review/references/passes.md +5 -0
  50. package/skills/engineering/e2e-test/SKILL.md +8 -1
  51. package/skills/engineering/engineering/SKILL.md +1 -1
  52. package/skills/engineering/engineering-runtime/SKILL.md +1 -1
  53. package/skills/engineering/engineering-runtime/coherence/workflow.json +13 -13
  54. package/skills/engineering/ensure-coverage/SKILL.md +8 -1
  55. package/skills/engineering/golden-path/SKILL.md +5 -1
  56. package/skills/engineering/harness-runtime/SKILL.md +1 -1
  57. package/skills/engineering/resolve-issues/SKILL.md +24 -5
  58. package/skills/engineering/resolve-issues/references/ci.md +12 -0
  59. package/skills/engineering/resolve-issues/references/delivery-progress.md +2 -0
  60. package/skills/engineering/resolve-issues/references/done.md +5 -0
  61. package/skills/engineering/resolve-issues/references/exploration.md +10 -3
  62. package/skills/engineering/resolve-issues/references/implementation.md +21 -10
  63. package/skills/engineering/resolve-issues/references/preflight.md +6 -0
  64. package/skills/engineering/resolve-release/SKILL.md +1 -1
  65. package/skills/engineering/rush-issues/SKILL.md +1 -1
  66. package/skills/engineering/rush-release/SKILL.md +1 -1
  67. package/skills/engineering/test-quality/SKILL.md +1 -1
  68. package/skills/risk-compliance/compliance-audit/SKILL.md +1 -1
  69. package/skills/risk-compliance/contract-compare/SKILL.md +1 -1
  70. package/skills/risk-compliance/contract-review/SKILL.md +1 -1
  71. package/skills/risk-compliance/doc-authenticity/SKILL.md +1 -1
  72. package/skills/risk-compliance/fraud-detection/SKILL.md +1 -1
  73. package/skills/risk-compliance/payment-analysis/SKILL.md +1 -1
  74. package/skills/risk-compliance/portfolio-payment-analysis/SKILL.md +1 -1
  75. package/skills/risk-compliance/similar-domain/SKILL.md +1 -1
  76. package/skills/risk-compliance/tld-detection/SKILL.md +1 -1
@@ -369,7 +369,7 @@
369
369
  "repository": "1aboveio/ai",
370
370
  "revision": "main"
371
371
  },
372
- "contentDigest": "46f0a76cadebab0a7de8dabf7a93eb194c7f41e0c872fa9c1a04dec86ee0fd88",
372
+ "contentDigest": "528de8e948bcd1cfdbe92bcb4c14129cbb78d5d9037d8d378d5ac540017cd248",
373
373
  "digestExcludes": []
374
374
  },
375
375
  {
@@ -382,7 +382,7 @@
382
382
  "repository": "1aboveio/ai",
383
383
  "revision": "main"
384
384
  },
385
- "contentDigest": "e1a794446b04b5b70d356ceb9bbbe2a3c518eac486286d5905da98a3d038de65",
385
+ "contentDigest": "1b1074c002a7d3ca2dfebe625b65128aee10a662f7f9d4060a018fbaecf3225f",
386
386
  "digestExcludes": []
387
387
  },
388
388
  {
@@ -395,7 +395,7 @@
395
395
  "repository": "1aboveio/ai",
396
396
  "revision": "main"
397
397
  },
398
- "contentDigest": "451349ddb0393831abe922cd66c77dd96ea6a4bdd6950c1546e507f5d056dc84",
398
+ "contentDigest": "61d744eeddd5b3a5d2fa7a94ea01ec3a570c72a7c19ad526761f21aac993abff",
399
399
  "digestExcludes": []
400
400
  },
401
401
  {
@@ -408,7 +408,7 @@
408
408
  "repository": "1aboveio/ai",
409
409
  "revision": "main"
410
410
  },
411
- "contentDigest": "b4c6ae8cb2e708e3695330e65567aab4a301b963d86a4b6706c324fd5e56a36e",
411
+ "contentDigest": "3140da610485146538ee76048446ea7bac8927890a1469eb8108e63e4056d655",
412
412
  "digestExcludes": []
413
413
  },
414
414
  {
@@ -421,7 +421,7 @@
421
421
  "repository": "1aboveio/ai",
422
422
  "revision": "main"
423
423
  },
424
- "contentDigest": "2dc4ffd9d459c1c61ff9472caf6b318bd45531995d8b8f142e775252c496b22b",
424
+ "contentDigest": "12f5230e47afdeab750cb6b1454b3172edb29b922155b2994e96a93f386b6dbd",
425
425
  "digestExcludes": []
426
426
  },
427
427
  {
@@ -434,7 +434,7 @@
434
434
  "repository": "1aboveio/ai",
435
435
  "revision": "main"
436
436
  },
437
- "contentDigest": "25ac49e98ce28203feccc17b4f85c67627db9c979511cca349df9dd1fe156d58",
437
+ "contentDigest": "b8d908580483f3954545e392c11d439ed100688eadc3b41ce508569f6dddc3bc",
438
438
  "digestExcludes": []
439
439
  },
440
440
  {
@@ -447,7 +447,7 @@
447
447
  "repository": "1aboveio/ai",
448
448
  "revision": "main"
449
449
  },
450
- "contentDigest": "bde840d0e6ea6d333c48b47f2635c31c54e1e86a1beee21e26d5a9788c5f7977",
450
+ "contentDigest": "256eac4a31f95d536ef487359df4c84fe7e85436c3b7550f6200f1b15cca4d0b",
451
451
  "digestExcludes": []
452
452
  },
453
453
  {
@@ -460,7 +460,7 @@
460
460
  "repository": "1aboveio/ai",
461
461
  "revision": "main"
462
462
  },
463
- "contentDigest": "be04047cebb486d9f0b56c59705210038c13ce8f3f10c5ecf7acb361f3a56d0c",
463
+ "contentDigest": "25ad674c96748cb5313d13c80dd1ac4be5bdb287e75e7f978d8e5b97f5892833",
464
464
  "digestExcludes": []
465
465
  },
466
466
  {
@@ -473,7 +473,7 @@
473
473
  "repository": "1aboveio/ai",
474
474
  "revision": "main"
475
475
  },
476
- "contentDigest": "d7c62210fdfdfa3504a056a8977aa3b67370b65f92d5d32e001fd394fabd44bd",
476
+ "contentDigest": "1d10c734eaef6bb20bf99bf9fa6dcfde6460ea2eecb84c33d7c0474e470684a9",
477
477
  "digestExcludes": []
478
478
  },
479
479
  {
@@ -486,7 +486,7 @@
486
486
  "repository": "1aboveio/ai",
487
487
  "revision": "main"
488
488
  },
489
- "contentDigest": "f1acfff02ba2ddb0e0d4ffbcd9b5411a394b3b38e9a48ab2ab01ba46fb9bed1f",
489
+ "contentDigest": "229a6d752c9b17c298172a022c36f8e28e409d665df4ed89f1655c17f37db3f3",
490
490
  "digestExcludes": []
491
491
  },
492
492
  {
@@ -499,7 +499,7 @@
499
499
  "repository": "1aboveio/ai",
500
500
  "revision": "main"
501
501
  },
502
- "contentDigest": "cd858ed046f7c4ecb10817307e906a8057db5b8fb5a8c8e9334ef04aff34b9b2",
502
+ "contentDigest": "c44aa11db1f62995c8b77929143892e421d7068193c959930c8af4fbe8a2d7f5",
503
503
  "digestExcludes": []
504
504
  },
505
505
  {
@@ -512,13 +512,13 @@
512
512
  "repository": "1aboveio/ai",
513
513
  "revision": "main"
514
514
  },
515
- "contentDigest": "c3cbfef912ac7448710a7ed5a5014a76928d0350e2032c264c3e0a3212468b6d",
515
+ "contentDigest": "14439c4b1390b3dde50dcf8d56ff5c578bbbe08b17627f7bd504db099ba5e92a",
516
516
  "digestExcludes": [
517
517
  "coherence/workflow.json"
518
518
  ]
519
519
  }
520
520
  ],
521
- "releaseIdentity": "b2e273424d4ceb9a24d78ad163daeb516538defae3f7e6ebea4f59edb055df9a",
521
+ "releaseIdentity": "d7ab71565826655a05f576e53932870e4d0176329a1b4110a460457e5cb2d0b8",
522
522
  "lifecycleAuthority": "native-skills-cli",
523
523
  "repairRecipe": {
524
524
  "id": "engineering-workflow-dependency-first",
@@ -2,7 +2,7 @@
2
2
  name: ensure-coverage
3
3
  description: "Define or audit behavior-first test criteria — ACs, required test levels, mock/integration/E2E policy — across three axes: breadth (Coverage Ledger), depth (over-mocking), presentation (perceivability of browser surfaces). NOT judging whether a single test is any good (test-quality), authoring browser tests (e2e-test), reviewing a PR (better-review), or delivering issues (resolve-issues)."
4
4
  disable-model-invocation: true
5
- release-version: 0.50.0
5
+ release-version: 0.50.1
6
6
  ---
7
7
  **Updates:** Once/session run `node <skill-base-dir>/release-check.mjs`.
8
8
  # Ensure Coverage
@@ -16,6 +16,13 @@ Read the relevant source and governing project guidance. When product behavior o
16
16
 
17
17
  ## Scope and proof
18
18
 
19
+ - Start from the issue's Acceptance Criteria, requirements elsewhere in the issue,
20
+ and later human corrections. Map each criterion to sufficient existing tests or
21
+ missing automation, its qualifying CI lane, and any human or physical-device
22
+ remainder. One test may prove several criteria; choose the lowest sufficient level.
23
+ Record this in the existing issue or findings without requiring a new ledger.
24
+ Workers deliver the tests; CI executes automated acceptance. Grade a criterion
25
+ satisfied only when the relevant assertions and candidate's results support it.
19
26
  - Choose the smallest sufficient proof for the outcome and material risks; reuse existing tests and required CI results when they prove the behavior. Do not automatically require multiple test layers, a ledger, a criteria document, a presentation campaign, or reconciliation of every ADR.
20
27
  - Existing required repository checks and adopted coverage floors remain binding unless an approved change alters them. Authentication, money, tenancy, and data-integrity protections remain binding. Read applicable ADRs and project policy for the touched work, not every ADR in the repository.
21
28
  - Consider breadth, depth, and presentation where relevant: what behavior is in scope, whether evidence actually exercises it, and whether a user can perceive and use a changed interface. Do not turn every axis or hypothetical state into a separate blocking obligation.
@@ -3,7 +3,7 @@ name: golden-path
3
3
  description: "Golden-path E2E: the short list of user journeys whose failure blocks a release, kept in a repo as one contract (golden-paths.json) with a generated GOLDEN_PATHS.md and a generated GitHub Actions workflow, and run against a local build or a deployed URL for an ALIVE/DEAD verdict. Use to set golden paths up in a repo ('init golden paths', 'add golden-path CI'), to migrate an older smoke.manifest.json or a hand-built smoke setup ('audit', 'migrate smoke'), to add, change, or remove a golden path, to ask 'is the build alive?' or run them before a PR or release, or when a change touches a flow listed in GOLDEN_PATHS.md. NOT for writing the Playwright specs themselves (e2e-test), deciding what a change must prove (ensure-coverage), or general workflow YAML (github-actions)."
4
4
  dependencies:
5
5
  - e2e-test
6
- release-version: 0.50.0
6
+ release-version: 0.50.1
7
7
  ---
8
8
  **Updates:** Once/session run `node <skill-base-dir>/release-check.mjs`.
9
9
  # Golden path
@@ -42,6 +42,10 @@ repo has a copy.
42
42
 
43
43
  ## Rules
44
44
 
45
+ Golden paths are the curated release-critical subset, not the full set of issue
46
+ Acceptance Criteria. Keep other automated acceptance tests in their appropriate CI
47
+ suites; an ALIVE verdict proves only the selected paths and their assertions.
48
+
45
49
  1. **A person decides which flows are golden.** Draft candidates; never promote one
46
50
  on your own judgment. A flow the user names in the request is confirmed, and so
47
51
  are paths carried over from an older smoke manifest (ask about trimming them).
@@ -3,7 +3,7 @@ name: harness-runtime
3
3
  description: Internal import-only library shared by first-party engineering packages. Not a workflow skill; never select or invoke it as a user capability.
4
4
  disable-model-invocation: true
5
5
  user-invocable: false
6
- release-version: 0.50.0
6
+ release-version: 0.50.1
7
7
  ---
8
8
  **Updates:** Once/session run `node <skill-base-dir>/release-check.mjs`.
9
9
  # Harness Runtime
@@ -8,7 +8,7 @@ dependencies:
8
8
  - better-review
9
9
  - golden-path
10
10
  - harness-runtime
11
- release-version: 0.50.0
11
+ release-version: 0.50.1
12
12
  ---
13
13
  **Updates:** Once/session run `node <skill-base-dir>/release-check.mjs`.
14
14
  # Resolve issues
@@ -119,15 +119,31 @@ Read each procedure right before its stage; never substitute your own.
119
119
  - **Proof.** Treat producer reports as claims until the reviewer or CI checks them. Tests and diagnostic probes
120
120
  encode failure in their exit status under [Proof](references/implementation.md#proof); printing an exception
121
121
  and returning 0 is not a passing check. Coordination CLIs keep their documented structured-verdict contracts.
122
- A unit owes coding acceptance only: its criteria at its `proof.level` plus the required CI
123
- on its final HEAD. Integrated release acceptance (a device or system campaign the spec or repository assigns
124
- to a release or campaign gate) runs at that gate, never per unit; the handback links its owning issue. Produce
125
- no evidence documents; the plan, findings, and reviews are the only records.
122
+ Apply the [Acceptance criteria](#acceptance-criteria) contract below. Use the plan,
123
+ findings, reviews and CI artifacts as the records; produce an additional checklist or
124
+ evidence document only when the issue or repository requires it, deriving results from actual runs.
126
125
  - **Delivery.** A dependent starts on its parent's finished code. Stack its PR on the parent's (a GitHub-native
127
126
  stack) under a live Mergify queue; chain it when the merge keeps commits; else open it once the parent merges. Live
128
127
  steps are only the read-only warehouse canary (never blocks) and the isolated, run-owned resources
129
128
  [preflight.md](references/preflight.md#never-block-on-the-human) allows.
130
129
 
130
+ ## Acceptance criteria
131
+
132
+ Treat Acceptance Criteria, other issue requirements and later corrections as the contract.
133
+ Reuse or implement automated tests at the lowest sufficient level. Workers deliver behavior
134
+ and tests, run focused local checks, and return with CI pending. CI qualifies the candidate;
135
+ the coordinator verifies results. Human or hardware criteria stay pending until their step passes.
136
+
137
+ At preflight, record coverage, missing automation, the CI lane and manual remainder in
138
+ findings. Reuse sufficient tests; one may cover several criteria. Acceptance-focused issues
139
+ are supported: automate criteria, fix in-scope defects and qualify results in CI.
140
+ Tests added or code merged alone do not satisfy acceptance.
141
+
142
+ Defer acceptance only when the issue or agreed policy assigns it to a later gate; link
143
+ its owner. An issue requesting the campaign remains incomplete until its criteria pass.
144
+ Preserve required checks and merge rules. Surface missing execution or enforcement;
145
+ change neither branch protection nor acceptance scope without authorization.
146
+
131
147
  ## Delivery progress
132
148
 
133
149
  Before briefing or continuing a unit, read [delivery-progress.md](references/delivery-progress.md).
@@ -219,6 +235,9 @@ that same `planRevision`.
219
235
 
220
236
  ## Done
221
237
 
238
+ Check each issue's [acceptance contract](#acceptance-criteria) against qualifying results;
239
+ record later-gate obligations. A merged PR does not close pending acceptance.
240
+
222
241
  First [clean every delivered unit's environment](references/done.md#clean-before-handoff), then
223
242
  [settle blocked units](references/done.md#settle-blocked-units). Every PR is reviewed, green on its exact HEAD, and merged (`autonomous`) or
224
243
  handed back merge-ready (`supervised`). For a blocked unit, hand back it, its
@@ -7,6 +7,18 @@ the queue owner's watcher where applicable. Workers may make short status reads
7
7
  fetch failed logs for diagnosis, but must not run `gh run watch`,
8
8
  `gh pr checks --watch`, a delivery watcher, or create background monitoring.
9
9
 
10
+ Qualify the issue's Acceptance Criteria as well as required repository checks.
11
+ Verify that the mapped tests actually ran in the assigned lane against the intended
12
+ candidate and their assertions cover the claimed behavior. A skipped case, missing
13
+ acceptance job, or green unrelated check is not acceptance. Use CI results and artifacts
14
+ for any required checklist; retain manual or explicitly later-gate obligations with
15
+ their owner. Worker completion with CI pending is not issue acceptance. Queue checks
16
+ qualify the combined candidate; post-deploy checks qualify the deployed revision.
17
+ Require each result at its assigned stage: PR admission checks before enqueue,
18
+ queue acceptance before merge, and deployed acceptance after deployment or before
19
+ promotion as specified. Queue-only acceptance is pending at admission, not missing
20
+ PR CI; it cannot be required to pass before the queue candidate exists.
21
+
10
22
  1. Watch the required checks for every pushed HEAD. Pushes to the unit's own
11
23
  PR branch need no approval. Green means every required check ran and passed
12
24
  on that HEAD: a check that never reported is missing, not passed. Example: a
@@ -59,6 +59,8 @@ acceptance bar, launch-authority rules and history; it is not a new setup or pro
59
59
  - model id, effort, and a required read-back
60
60
  - an absolute skill path when the stage invokes a leaf skill; for validating, the unit's `proof.suite` `skill` (read it first) and `local`, when set
61
61
  - the outcome and validation, with no prescribed method or evidence format
62
+ - the Acceptance Criteria mapping: existing or missing tests, qualifying CI lane,
63
+ and manual or explicitly later-gate obligations; include any issue-required checklist
62
64
  - the [immediate acceptance checkpoint](#delivery-progress), existing baseline (or none),
63
65
  and, for a continuation, the last result, remaining uncertainty and next distinguishing
64
66
  test; retain the same checkpoint/history when changing workers
@@ -31,6 +31,11 @@ cancelled, pending, or merge-ready handed-back unit that keeps its environment.
31
31
 
32
32
  ## Close the run
33
33
 
34
+ Before closing, distinguish run completion from issue acceptance. Verify the issue's
35
+ Acceptance Criteria against qualifying CI results and required manual results. Keep
36
+ an issue open when its own acceptance remains pending, even if its automation PR
37
+ merged or its human-only remainder was excluded. Link that obligation in the report.
38
+
34
39
  After the report ([SKILL.md](../SKILL.md#done)):
35
40
 
36
41
  The run is done when nothing it can do is left: every unit landed,
@@ -125,6 +125,12 @@ The coordinator and any delegated explorer use these rules:
125
125
  5. **`layers`:** the parts changed (`backend`, `web`, `android`, `shared`,
126
126
  `migration`).
127
127
  6. **`proof`:**
128
+ Map the issue's Acceptance Criteria and other binding requirements to existing
129
+ tests, missing automation, the qualifying CI lane, and any manual remainder in
130
+ the existing notes/proof fields. Preserve criterion identifiers when supplied;
131
+ no new ledger or schema is required. For acceptance-focused issues, include
132
+ implementing the cases and connecting their execution to CI in the unit's scope.
133
+
128
134
  - `level`: the weakest the run can reach that shows the behaviors work:
129
135
  `unit`, `database`, `browser`, or `emulator`.
130
136
  - `suite` (`browser`/`emulator` only): the repository's end-to-end suite
@@ -157,9 +163,10 @@ The coordinator and any delegated explorer use these rules:
157
163
  Example: a campaign's 25 scenario groups each cover one feature issue; 20
158
164
  share "owned emulator, database, and fixture pool" (900 lines).
159
165
 
160
- `level` is coding acceptance. Integrated acceptance the spec or repository
161
- assigns to a later gate (a release device campaign, all-ABI or signed
162
- builds, a cross-feature journey) goes in `handback`, naming its gate.
166
+ `level` selects the test depth for automated acceptance. Put integrated acceptance
167
+ in `handback`, naming its gate and owner, only when the issue or agreed repository
168
+ policy assigns it to a later gate. A cross-feature or device journey is not deferred
169
+ merely because it is expensive; an issue requesting that acceptance still owes it.
163
170
  7. **`estimatedLines`: your honest estimate of changed source and test
164
171
  lines,** excluding generated files and docs, including every missing
165
172
  prerequisite. Do not pad it: the size check scales it by 1.3.
@@ -27,7 +27,8 @@ the coordinator.
27
27
  not the backend suite.
28
28
  5. **Run focused checks locally; CI runs the rest.**
29
29
  Example: run the touched package's tests and typecheck, push, and let CI
30
- run the full matrix. Never rebuild a release device campaign in a unit.
30
+ run the full matrix. Run release campaigns only at their assigned gate;
31
+ implement campaign automation when the current issue requests it.
31
32
  6. **Report in one short record and return.**
32
33
  Example: "Persists the Charge layout per installation. Ran charge tests
33
34
  and typecheck: pass. CI: pending. Pending: release device campaign
@@ -156,8 +157,10 @@ On `resume` (in flight, no worker, code not done), continue the unit's
156
157
  step, error message and evidence path the worker observed. An exit code alone is
157
158
  not a failure; keep the first failure separate from cleanup errors. Fix workers
158
159
  write the same file. Return
159
- nothing else: no artifact hashes, version inventories, screenshots,
160
- copied logs, or earlier attempts. For a continuation, include the current checkpoint,
160
+ only that result by default. When the issue or repository requires a checklist
161
+ or evidence document, produce it from actual results and link CI artifacts;
162
+ otherwise omit artifact hashes, inventories, screenshots and copied logs.
163
+ For a continuation, include the current checkpoint,
161
164
  outcome and relevant prior-result links in the existing integration notes; do not
162
165
  duplicate the full attempt history. After focused validation, the permitted push,
163
166
  and the result, return without waiting for external CI or PR monitoring. Report
@@ -176,6 +179,11 @@ workers those local facts rather than copying the old transcript. Keep all progr
176
179
 
177
180
  ## Proof
178
181
 
182
+ - **Implement the acceptance contract.** Read the issue's Acceptance Criteria and
183
+ the preflight mapping. Reuse sufficient tests and add missing assertions at the
184
+ lowest level that exercises the required behavior. Ensure CI selects and executes
185
+ them in the assigned lane. Return test/criterion references and pending CI or manual
186
+ obligations in the existing result; the coordinator qualifies acceptance.
179
187
  - **Make diagnostic failures executable.** Reuse the existing test runner/assertions.
180
188
  A standalone probe exits nonzero for an unexpected exception, failed assertion or
181
189
  result outside the expected contract. A catch used to add context rethrows or sets
@@ -226,12 +234,11 @@ workers those local facts rather than copying the old transcript. Keep all progr
226
234
  failure ([expire.md](expire.md#infrastructure-failures)): one bounded
227
235
  investigation that fixes what the run can; a shared blocker issue only
228
236
  when the cause stays unfound or its fix is human-only. Keep the rest moving.
229
- - Keep `proof.physical` and integrated release acceptance out of the unit's
230
- acceptance. A device campaign, all-ABI or signed build, or cross-feature
231
- journey the spec or repository assigns to a release or campaign gate runs
232
- at that gate: never rebuild it in the unit. Report it as pending in the
233
- result; the coordinator records it once in its owning issue, never as
234
- passed.
237
+ - Keep `proof.physical` and explicitly assigned later release acceptance pending
238
+ at their named gate and owning issue. Build the automated tests the current issue
239
+ requests even when CI runs them as a campaign. If the current issue requests the
240
+ campaign's result, test implementation alone is not completion. Report manual or
241
+ unavailable checks as pending, never passed.
235
242
 
236
243
  ## Scheduling
237
244
 
@@ -384,11 +391,15 @@ parent another child holds.
384
391
  line's PRs bottom first (`--base <targetBranch>` when it is not the default
385
392
  branch); with the Mergify stack hooks installed, push with the `mergify`
386
393
  skill's `stack-push.mjs` instead. Keep the body to one short record:
387
- `Closes #<issue>`, the behavior delivered, the checks run with their
394
+ the issue link, the behavior delivered, the checks run with their
388
395
  results, and any outstanding blocker or pending obligation as an issue
389
396
  link; add the parent PR in `stack` and `chain` mode. CI posts its own run link; cite
390
397
  CI-generated artifacts where provenance is required, never hashes or
391
398
  logs copied by hand.
399
+ Use `Closes #<issue>` only when merging this PR will satisfy that issue's own
400
+ acceptance contract. With outstanding manual or post-merge acceptance, use
401
+ `Refs #<issue>` in both the PR body and commit message so merging automation
402
+ does not close the original issue. The coordinator closes it after acceptance.
392
403
  3. Record the PR URL and `headSha`; once the code is done, start review while CI runs. Mark the
393
404
  PR ready only when review passes and CI is green on the same HEAD
394
405
  ([ci.md](ci.md)).
@@ -155,6 +155,12 @@ Example: epic #12's #20 (signed release and go/no-go) and #21
155
155
  (physical acceptance) stay out of the plan; the run ends when its code units
156
156
  land instead of waiting on them.
157
157
 
158
+ An automated browser or emulator acceptance campaign is implementable work, including
159
+ when it proves already-merged features. Include its tests, CI execution and requested
160
+ results in scope. For mixed automated/manual criteria, keep the automation unit and
161
+ record the human-only remainder with its owner; report the original issue incomplete
162
+ until that remainder passes. Exclusion records a pending obligation, not acceptance.
163
+
158
164
  ## 4. Assess the plan
159
165
 
160
166
  Follow [exploration.md](exploration.md#choose-the-owner) on the provisional
@@ -4,7 +4,7 @@ description: "Slash/explicit-only (/resolve-release). Full GitHub Flow release f
4
4
  disable-model-invocation: true
5
5
  metadata:
6
6
  workflow-role: coordinator
7
- release-version: 0.50.0
7
+ release-version: 0.50.1
8
8
  ---
9
9
  **Updates:** Once/session run `node <skill-base-dir>/release-check.mjs`.
10
10
  # Resolve release
@@ -6,7 +6,7 @@ metadata:
6
6
  workflow-role: coordinator
7
7
  dependencies:
8
8
  - resolve-issues
9
- release-version: 0.50.0
9
+ release-version: 0.50.1
10
10
  ---
11
11
  **Updates:** Once/session run `node <skill-base-dir>/release-check.mjs`.
12
12
  # Rush issues (shortcut of resolve-issues)
@@ -6,7 +6,7 @@ metadata:
6
6
  workflow-role: coordinator
7
7
  dependencies:
8
8
  - resolve-release
9
- release-version: 0.50.0
9
+ release-version: 0.50.1
10
10
  ---
11
11
  **Updates:** Once/session run `node <skill-base-dir>/release-check.mjs`.
12
12
  # Rush release (shortcut of resolve-release)
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  name: test-quality
3
3
  description: "Seven principles for tests that catch real bugs, and an audit that reports weak, redundant, and not-coverage tests without fixing them. Use when writing, changing, or reviewing tests, or when asked whether tests are useful, redundant, over-mocked, flaky, only assert static text, or test config files, or asked to make a slow test suite faster without losing coverage, or when the user asks to write the testing conventions into a repo's CONTRIBUTING.md. NOT defining what a spec must prove (ensure-coverage) or authoring browser tests (e2e-test)."
4
- release-version: 0.50.0
4
+ release-version: 0.50.1
5
5
  ---
6
6
  **Updates:** Once/session run `node <skill-base-dir>/release-check.mjs`.
7
7
  # Test Quality
@@ -2,7 +2,7 @@
2
2
  name: compliance-audit
3
3
  version: 2.9.0
4
4
  description: "Audit operations against financial-compliance checklists (AML/KYC, VARS, PCI-DSS, TPA oversight, onboarding, transaction monitoring). Produces tracker.md (with a tracker.xlsx export) and phase-trail.md with layered validation; cites evidence by original filename. Input: reg-parser or the built-in VARS checklist."
5
- release-version: 0.50.0
5
+ release-version: 0.50.1
6
6
  ---
7
7
  **Updates:** Once/session run `node <skill-base-dir>/release-check.mjs`.
8
8
  # Compliance Audit
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  name: contract-compare
3
3
  description: "Compare two or more contracts side-by-side for structured diff, gap analysis, and benchmarking. Use when: comparing contracts or agreements, contract diff, compare terms, vendor-vs-vendor, compare our template vs theirs, compliance gap between contracts. NOT for single-contract risk review — use contract-review for that."
4
- release-version: 0.50.0
4
+ release-version: 0.50.1
5
5
  ---
6
6
  **Updates:** Once/session run `node <skill-base-dir>/release-check.mjs`.
7
7
  # Contract Compare
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  name: contract-review
3
3
  description: "Review contracts for legal, commercial, and compliance risks via convert → chunk review → merge → validate (+ optional mandate preprocessing). Use for reviewing, auditing, or checking any contract, agreement, NDA, MSA, or SLA; input a file path (PDF/DOCX/TXT) or pasted text."
4
- release-version: 0.50.0
4
+ release-version: 0.50.1
5
5
  ---
6
6
  **Updates:** Once/session run `node <skill-base-dir>/release-check.mjs`.
7
7
  # Contract Review
@@ -3,7 +3,7 @@ name: doc-authenticity
3
3
  version: 0.4.1
4
4
  description: "Screen PDF documents and raster images for fabrication, tampering, Photoshop or other image-editor use, and content validity. Detects file type, runs format-specific authenticity forensics, classifies bank statements, conversation logs, invoices, agreements, and other documents, then applies type-specific validity checks. Produces separate authenticity (NO_EVIDENCE_OF_MODIFICATION / SUSPICIOUS / LIKELY_MODIFIED / INCONCLUSIVE) and validity (VALID / INVALID / INCONCLUSIVE) verdicts. Use whenever a user asks whether a document, screenshot, scan, statement, invoice, contract, chat log, receipt, or payment evidence is genuine, original, edited, Photoshopped, manipulated, fake, or valid."
5
5
  disable-model-invocation: true
6
- release-version: 0.50.0
6
+ release-version: 0.50.1
7
7
  ---
8
8
  **Updates:** Once/session run `node <skill-base-dir>/release-check.mjs`.
9
9
  # Document and Image Authenticity
@@ -12,7 +12,7 @@ description: >
12
12
  impact, and a business report. Use for fraud, scam, mule, account-takeover,
13
13
  chargeback, dispute, transfer, collection, or payout risk analysis even when the
14
14
  user does not name this skill.
15
- release-version: 0.50.0
15
+ release-version: 0.50.1
16
16
  ---
17
17
  **Updates:** Once/session run `node <skill-base-dir>/release-check.mjs`.
18
18
  # Fraud Detection
@@ -14,7 +14,7 @@ description: >
14
14
  transactions" — even if they do not say payment-analysis. Do NOT use for
15
15
  fraud rule discovery (fraud-detection) or TLD / MCC-miscoding
16
16
  clusters (tld-detection).
17
- release-version: 0.50.0
17
+ release-version: 0.50.1
18
18
  ---
19
19
  **Updates:** Once/session run `node <skill-base-dir>/release-check.mjs`.
20
20
  # Payment Analysis
@@ -5,7 +5,7 @@ description: >
5
5
  and investigate selected merchants' authorization, settlement and disputes,
6
6
  including descriptor mapping and overlapping exports. Portfolio-level payment
7
7
  overviews belong to payment-analysis; fraud rule discovery belongs to fraud-detection.
8
- release-version: 0.50.0
8
+ release-version: 0.50.1
9
9
  ---
10
10
  **Updates:** Once/session run `node <skill-base-dir>/release-check.mjs`.
11
11
  # Portfolio payment analysis
@@ -8,7 +8,7 @@ description: >
8
8
  links, an entity chain, and a watchlist for the operator's next domains.
9
9
  Not transaction data (tld-detection) or fraud rules (fraud-detection).
10
10
  disable-model-invocation: true
11
- release-version: 0.50.0
11
+ release-version: 0.50.1
12
12
  ---
13
13
  **Updates:** Once/session run `node <skill-base-dir>/release-check.mjs`.
14
14
  # Similar Domain
@@ -6,7 +6,7 @@ description: >
6
6
  patterns, with USD and BIN-country currency views, group profiles and priorities.
7
7
  Not payment-analysis, fraud-detection, or website research.
8
8
  disable-model-invocation: true
9
- release-version: 0.50.0
9
+ release-version: 0.50.1
10
10
  ---
11
11
  **Updates:** Once/session run `node <skill-base-dir>/release-check.mjs`.
12
12
  # TLD detection