@1aboveio/skills 1.0.5 → 1.0.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (78) hide show
  1. package/README.md +1 -1
  2. package/package.json +2 -3
  3. package/skills/app-dev/airflow/SKILL.md +1 -1
  4. package/skills/app-dev/android-foundation/SKILL.md +1 -1
  5. package/skills/app-dev/app-debug/SKILL.md +1 -1
  6. package/skills/app-dev/better-auth/SKILL.md +1 -1
  7. package/skills/app-dev/data-catalog/SKILL.md +1 -1
  8. package/skills/app-dev/data-quality/SKILL.md +1 -1
  9. package/skills/app-dev/ios-foundation/SKILL.md +1 -1
  10. package/skills/app-dev/monorepo/SKILL.md +1 -1
  11. package/skills/app-dev/nextjs-fullstack/SKILL.md +1 -1
  12. package/skills/app-dev/prisma-setup/SKILL.md +1 -1
  13. package/skills/app-dev/pyspark/SKILL.md +1 -1
  14. package/skills/app-dev/python-backend/SKILL.md +1 -1
  15. package/skills/app-dev/shadcn/SKILL.md +1 -1
  16. package/skills/app-dev/zod-v4/SKILL.md +1 -1
  17. package/skills/cicd/cloud-build/SKILL.md +1 -1
  18. package/skills/cicd/cloud-debug/SKILL.md +1 -1
  19. package/skills/cicd/cloud-deploy/SKILL.md +1 -1
  20. package/skills/cicd/docker/SKILL.md +1 -1
  21. package/skills/cicd/github-actions/SKILL.md +1 -1
  22. package/skills/cicd/github-flow/SKILL.md +1 -1
  23. package/skills/cicd/google-cloud/SKILL.md +1 -1
  24. package/skills/cicd/mergify/SKILL.md +1 -1
  25. package/skills/cicd/podman/SKILL.md +1 -1
  26. package/skills/content/article-review/SKILL.md +1 -1
  27. package/skills/content/article-to-image/SKILL.md +1 -1
  28. package/skills/content/flowchart-svg/SKILL.md +1 -1
  29. package/skills/content/image-gen/SKILL.md +1 -1
  30. package/skills/content/mermaid/SKILL.md +1 -1
  31. package/skills/content/wechat-article-writer/SKILL.md +1 -1
  32. package/skills/content/wechat-publisher/SKILL.md +1 -1
  33. package/skills/content/wechat-search/SKILL.md +1 -1
  34. package/skills/content/xai-search/SKILL.md +1 -1
  35. package/skills/core/distill-writing/SKILL.md +22 -4
  36. package/skills/core/distill-writing/references/extraction.md +19 -3
  37. package/skills/core/doc-to-md/SKILL.md +1 -1
  38. package/skills/core/editorial-review/SKILL.md +1 -1
  39. package/skills/core/house-style/SKILL.md +2 -1
  40. package/skills/core/house-style/references/persistence.md +93 -0
  41. package/skills/core/house-style/references/rules.md +22 -6
  42. package/skills/core/house-style/templates/gap-analysis.md +1 -1
  43. package/skills/core/plain-language/SKILL.md +40 -4
  44. package/skills/core/polish-cn/SKILL.md +1 -1
  45. package/skills/core/reg-parser/SKILL.md +2 -2
  46. package/skills/core/reg-parser/scripts/dump_checklist.py +1 -1
  47. package/skills/core/terminology/SKILL.md +1 -1
  48. package/skills/core/write-doc/SKILL.md +31 -12
  49. package/skills/core/write-doc/references/bilingual.md +10 -1
  50. package/skills/core/write-doc/references/compliance-reports.md +163 -0
  51. package/skills/{risk-compliance/report-writing/references → core/write-doc/references/reports}/audit-report-template.md +2 -2
  52. package/skills/{risk-compliance/report-writing/references → core/write-doc/references/reports}/external-assessment-template.md +21 -5
  53. package/skills/{risk-compliance/report-writing/references → core/write-doc/references/reports}/management-report-template.md +7 -2
  54. package/skills/{risk-compliance/report-writing/references → core/write-doc/references/reports}/vars-report-template.md +6 -3
  55. package/skills/engineering/better-review/SKILL.md +1 -1
  56. package/skills/engineering/contributing/SKILL.md +1 -1
  57. package/skills/engineering/e2e-test/SKILL.md +1 -1
  58. package/skills/engineering/engineering-runtime/SKILL.md +1 -1
  59. package/skills/engineering/engineering-runtime/coherence/workflow.json +13 -13
  60. package/skills/engineering/ensure-coverage/SKILL.md +1 -1
  61. package/skills/engineering/golden-path/SKILL.md +1 -1
  62. package/skills/engineering/harness-runtime/SKILL.md +1 -1
  63. package/skills/engineering/resolve-issues/SKILL.md +1 -1
  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-analysis/SKILL.md +1 -1
  73. package/skills/risk-compliance/payment-analysis/SKILL.md +1 -1
  74. package/skills/risk-compliance/similar-domain/SKILL.md +1 -1
  75. package/skills/risk-compliance/tld-detection/SKILL.md +1 -1
  76. package/skills/risk-compliance/report-writing/LICENSE +0 -3
  77. package/skills/risk-compliance/report-writing/SKILL.md +0 -220
  78. package/skills/risk-compliance/report-writing/release-check.mjs +0 -93
@@ -1,5 +1,7 @@
1
1
  # VARS Review Report Template
2
2
 
3
+ Read [compliance reports](../compliance-reports.md) before using this layout.
4
+
3
5
  Authoritative template for **Visa Acceptance Risk Standards (VARS)** review reports
4
6
  distributed by Visa to acquirers. Mirrors Visa's official 2025 *Visa Acceptance Risk
5
7
  Standards Report Template* (Confidential, Final).
@@ -20,8 +22,9 @@ Remediation Tracking* spreadsheet, which is the same tracker in Visa's Excel for
20
22
  Before drafting:
21
23
  1. Confirm the tracker exists and covers all nine sub-domains. If any are missing or
22
24
  marked "Not Assessed", stop and raise it — do not paper over gaps in the report.
23
- 2. Confirm every control row has a status and a severity. Section 4 priorities and
24
- Section 3.d summary statements both depend on these.
25
+ 2. Confirm every control row has a Control Effectiveness Rating and the mandatory
26
+ fields required by the tracker schema. Sections 3.d and 4 use these ratings;
27
+ VARS has no generic severity-priority field. Do not invent one.
25
28
  3. Note the tracker's filename and version — it will be referenced from Section 5 and
26
29
  should accompany the report when distributed.
27
30
 
@@ -173,7 +176,7 @@ TPA controls across the AACQ sub-domains (so e.g. a TPA-agreement gap does not p
173
176
  "Written Agreement" or "Onboarding" rows down). Omit row 10 when ATPA is out of scope.
174
177
 
175
178
  **Compliance Status values:** Satisfactory / Improvement Recommended / Unsatisfactory / N/A — the tracker's Control Effectiveness Rating. A sub-domain takes the **worst** rating among its controls (any Unsatisfactory ⇒ Unsatisfactory; else any Improvement Recommended ⇒ Improvement Recommended; else Satisfactory; N/A only if every control is N/A).
176
- **Findings and Comments:** written as an **inline auditor narrative** — flowing prose (no bold sub-headings) that conveys, in order, what was **observed** (the controls and practices in place), the **finding** (the rating and any mandatory gaps), and **comments** (recommendations and scoping notes such as N/A controls). Describe the controls in the report's **own words**; do **not** cite the underlying evidence documents, clauses, attestation numbers, or specific samples — that detail lives in the tracker (Section 5), and repeating it here duplicates the tracker. Lightweight control-ID cross-references (e.g. `AACQ.C8.1`) may be included as pointers. The **Actions Required** and **Recommendations** items must be reproduced **verbatim — word for word — from the tracker's Issue Description** (only the observations narrative is in the report's own words); put each item on its own line so they stay visible. For a fully **Satisfactory** row, close with `No remediation required.` When rendering to DOCX/PDF, each `<br>`-separated line in this cell must appear on its own line — see the rendering note in `SKILL.md` (a plain pandoc table conversion collapses them).
179
+ **Findings and Comments:** written as an **inline auditor narrative** — flowing prose (no bold sub-headings) that conveys, in order, what was **observed** (the controls and practices in place), the **finding** (the rating and any mandatory gaps), and **comments** (recommendations and scoping notes such as N/A controls). Describe the controls in the report's **own words**; do **not** cite the underlying evidence documents, clauses, attestation numbers, or specific samples — that detail lives in the tracker (Section 5), and repeating it here duplicates the tracker. Lightweight control-ID cross-references (e.g. `AACQ.C8.1`) may be included as pointers. The **Actions Required** and **Recommendations** items must be reproduced **verbatim — word for word — from the tracker's Issue Description** (only the observations narrative is in the report's own words); put each item on its own line so they stay visible. For a fully **Satisfactory** row, close with `No remediation required.` When rendering to DOCX/PDF, each `<br>`-separated line in this cell must appear on its own line — see [export checks](../compliance-reports.md#export-checks) (a plain pandoc table conversion collapses them).
177
180
 
178
181
  ---
179
182
 
@@ -4,7 +4,7 @@ description: "Slash/explicit-only (/better-review). Single-agent adversarial rev
4
4
  disable-model-invocation: true
5
5
  dependencies:
6
6
  - engineering-runtime
7
- release-version: 0.42.0
7
+ release-version: 0.43.0
8
8
  ---
9
9
  **Updates:** Once/session run `node <skill-base-dir>/release-check.mjs`.
10
10
  # Better Review
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  name: contributing
3
3
  description: "The conventions a repo's CONTRIBUTING.md holds, starting with tracker routing: which tracker an issue belongs in (GitHub for engineering, Linear for product), duplicate search, and linking back to the source requirement. Use before creating any issue, spec, epic, ticket or sub-issue on GitHub or Linear, including inside /to-spec, /to-tickets and /triage, and whenever work that started from a Linear issue turns into engineering work. Also writes the rules as the Issue tracking section of the repo's CONTRIBUTING.md. NOT for delivering a PR (github-flow) or splitting work into slices (to-tickets)."
4
- release-version: 0.42.0
4
+ release-version: 0.43.0
5
5
  ---
6
6
  **Updates:** Once/session run `node <skill-base-dir>/release-check.mjs`.
7
7
  # Contributing
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  name: e2e-test
3
3
  description: "Playwright end-to-end standard: the 3-tier suite (render-health / functional / journey), generated route manifest, and presentation sweep. Use when browser routes or user flows ship or change, or a Playwright test flakes. NOT for non-browser tests, defining what to test (ensure-coverage), the curated ALIVE/DEAD golden-path gate (golden-path), or CI workflow YAML (github-actions)."
4
- release-version: 0.42.0
4
+ release-version: 0.43.0
5
5
  ---
6
6
  **Updates:** Once/session run `node <skill-base-dir>/release-check.mjs`.
7
7
  # E2E Testing Standard
@@ -3,7 +3,7 @@ name: engineering-runtime
3
3
  description: Internal support package for shared Engineering Workflow executable behavior. Never select or invoke this package as a user capability.
4
4
  disable-model-invocation: true
5
5
  user-invocable: false
6
- release-version: 0.42.0
6
+ release-version: 0.43.0
7
7
  ---
8
8
  **Updates:** Once/session run `node <skill-base-dir>/release-check.mjs`.
9
9
  # Engineering Runtime
@@ -369,7 +369,7 @@
369
369
  "repository": "1aboveio/ai",
370
370
  "revision": "main"
371
371
  },
372
- "contentDigest": "29dda87aaa4090bbc1b8ac3f3eaa66261cdea76c88f9eac034eb8c85ad767431",
372
+ "contentDigest": "8f0be335debec8a0b64bb40201a412eb0bc9ccc402074a7af0a483609daac28e",
373
373
  "digestExcludes": []
374
374
  },
375
375
  {
@@ -382,7 +382,7 @@
382
382
  "repository": "1aboveio/ai",
383
383
  "revision": "main"
384
384
  },
385
- "contentDigest": "5cbfd6c6efe831db62de5dfaf6a969a57fb948da18d1f15343a4f9fb929b5d1f",
385
+ "contentDigest": "54c4c3e8579168b32c9d894f91d9bd6950dde2bf44ebd908cc7c548bdc0f6435",
386
386
  "digestExcludes": []
387
387
  },
388
388
  {
@@ -395,7 +395,7 @@
395
395
  "repository": "1aboveio/ai",
396
396
  "revision": "main"
397
397
  },
398
- "contentDigest": "a6beb9f98cf5bd1b0b93dfaf9d7370b442661996fd17ace25db4ead102e656f6",
398
+ "contentDigest": "8e6ae6a6065c670b6ed61c2b881dbea921847a7d80818916e853c4b73dd02e56",
399
399
  "digestExcludes": []
400
400
  },
401
401
  {
@@ -408,7 +408,7 @@
408
408
  "repository": "1aboveio/ai",
409
409
  "revision": "main"
410
410
  },
411
- "contentDigest": "61cbdbdae25549a16147280204cbb2e539d19a9ebda12e18544c5ba441de8104",
411
+ "contentDigest": "d5c96b3b0a7272a6ae6d4670f3deca7196c39cdb857d52936b076e880d338bcd",
412
412
  "digestExcludes": []
413
413
  },
414
414
  {
@@ -421,7 +421,7 @@
421
421
  "repository": "1aboveio/ai",
422
422
  "revision": "main"
423
423
  },
424
- "contentDigest": "2ad0540e1e0591fc2979a8f319d5ce6741aa7a8ab1d6f913b177b40d1d325a33",
424
+ "contentDigest": "077317f2b2e8a142bd46c75d00bf2ba23b34cc24daa3f49bb9e4bb7247f7590c",
425
425
  "digestExcludes": []
426
426
  },
427
427
  {
@@ -434,7 +434,7 @@
434
434
  "repository": "1aboveio/ai",
435
435
  "revision": "main"
436
436
  },
437
- "contentDigest": "30da0eabbec9040a1ed9b51553b4bed54e69ec4f288904dc2536be330f7e625a",
437
+ "contentDigest": "a755c90afd1aef1e3de56fd35af08e98fc111b7cea775a63c7a34593ec1e499b",
438
438
  "digestExcludes": []
439
439
  },
440
440
  {
@@ -447,7 +447,7 @@
447
447
  "repository": "1aboveio/ai",
448
448
  "revision": "main"
449
449
  },
450
- "contentDigest": "9b9f791716e53350d538e52649835888f7329f64f0f09df741eeaf4180214f9a",
450
+ "contentDigest": "937c2139aa3ca8f9f0a325c8a1300b1a84faba2f16132f8c608169e4e0732631",
451
451
  "digestExcludes": []
452
452
  },
453
453
  {
@@ -460,7 +460,7 @@
460
460
  "repository": "1aboveio/ai",
461
461
  "revision": "main"
462
462
  },
463
- "contentDigest": "3f645b737fbfd24f558bb84c5c4690abf76f19292a3382614ef2369333d9c4e4",
463
+ "contentDigest": "a2e269f07c9309c5404eafe1b2ca2f5913dd390711c9a3ea7bffb3ae13c88a58",
464
464
  "digestExcludes": []
465
465
  },
466
466
  {
@@ -473,7 +473,7 @@
473
473
  "repository": "1aboveio/ai",
474
474
  "revision": "main"
475
475
  },
476
- "contentDigest": "8c7e031f4193dee85aa3c372dbde007bc4eda3c3be8a01782af1eae22eae3597",
476
+ "contentDigest": "9c2920ba1dd60e6546831d5c5e0d32c2ce620cfd81cbb6b336c19dde223cacbb",
477
477
  "digestExcludes": []
478
478
  },
479
479
  {
@@ -486,7 +486,7 @@
486
486
  "repository": "1aboveio/ai",
487
487
  "revision": "main"
488
488
  },
489
- "contentDigest": "c7ee7f4efa548aefce16d471f33e821baf297eb457b05c971c13eac7b242a56f",
489
+ "contentDigest": "4b85a0b25eec4594b40d95f41307ae1960b57d648df6e032cc0c780187432805",
490
490
  "digestExcludes": []
491
491
  },
492
492
  {
@@ -499,7 +499,7 @@
499
499
  "repository": "1aboveio/ai",
500
500
  "revision": "main"
501
501
  },
502
- "contentDigest": "ee9cbd827623de79d82049ce3d591df928459d5366f0acf2d58c278e22d0f8a4",
502
+ "contentDigest": "ee9204746c76d9734873b6f4953c2bf4854d01544bdd8212fe93df80d51e1c28",
503
503
  "digestExcludes": []
504
504
  },
505
505
  {
@@ -512,13 +512,13 @@
512
512
  "repository": "1aboveio/ai",
513
513
  "revision": "main"
514
514
  },
515
- "contentDigest": "5913c86a3e73d20b4bf9ef3f1426fbbe41295226bc6e2d6ef9bf08e1e7a9fb36",
515
+ "contentDigest": "1924382a6facdc4ad20cf9a70ee608c33c9d3dcba0babc2c1ed900876f6f1bb2",
516
516
  "digestExcludes": [
517
517
  "coherence/workflow.json"
518
518
  ]
519
519
  }
520
520
  ],
521
- "releaseIdentity": "39b7ac8ecbc245defbeeb73a7d4c2e872a32c3bc992b95590058cd236952efc1",
521
+ "releaseIdentity": "931e08c86e3cec4a44ba5568386488328de64187ae452e1db2a952043068d0f6",
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.42.0
5
+ release-version: 0.43.0
6
6
  ---
7
7
  **Updates:** Once/session run `node <skill-base-dir>/release-check.mjs`.
8
8
  # Ensure Coverage
@@ -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.42.0
6
+ release-version: 0.43.0
7
7
  ---
8
8
  **Updates:** Once/session run `node <skill-base-dir>/release-check.mjs`.
9
9
  # Golden path
@@ -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.42.0
6
+ release-version: 0.43.0
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.42.0
11
+ release-version: 0.43.0
12
12
  ---
13
13
  **Updates:** Once/session run `node <skill-base-dir>/release-check.mjs`.
14
14
  # Resolve issues
@@ -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.42.0
7
+ release-version: 0.43.0
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.42.0
9
+ release-version: 0.43.0
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.42.0
9
+ release-version: 0.43.0
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.42.0
4
+ release-version: 0.43.0
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.42.0
5
+ release-version: 0.43.0
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.42.0
4
+ release-version: 0.43.0
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.42.0
4
+ release-version: 0.43.0
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.42.0
6
+ release-version: 0.43.0
7
7
  ---
8
8
  **Updates:** Once/session run `node <skill-base-dir>/release-check.mjs`.
9
9
  # Document and Image Authenticity
@@ -10,7 +10,7 @@ description: >
10
10
  impact, and a business report. Use for fraud, scam, mule, account-takeover,
11
11
  chargeback, dispute, transfer, collection, or payout risk analysis even when the
12
12
  user does not name this skill.
13
- release-version: 0.42.0
13
+ release-version: 0.43.0
14
14
  ---
15
15
  **Updates:** Once/session run `node <skill-base-dir>/release-check.mjs`.
16
16
  # Fraud Analysis
@@ -14,7 +14,7 @@ description: >
14
14
  transactions" — even if they do not say payment-analysis. Do NOT use for
15
15
  supervised fraud-rule mining (fraud-analysis) or TLD / MCC-miscoding
16
16
  clusters (tld-detection).
17
- release-version: 0.42.0
17
+ release-version: 0.43.0
18
18
  ---
19
19
  **Updates:** Once/session run `node <skill-base-dir>/release-check.mjs`.
20
20
  # 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-analysis).
10
10
  disable-model-invocation: true
11
- release-version: 0.42.0
11
+ release-version: 0.43.0
12
12
  ---
13
13
  **Updates:** Once/session run `node <skill-base-dir>/release-check.mjs`.
14
14
  # Similar Domain
@@ -11,7 +11,7 @@ description: >
11
11
  with a ≤3-sentence summary.
12
12
  Not payment-analysis, fraud-analysis, or website research (similar-domain).
13
13
  disable-model-invocation: true
14
- release-version: 0.42.0
14
+ release-version: 0.43.0
15
15
  ---
16
16
  **Updates:** Once/session run `node <skill-base-dir>/release-check.mjs`.
17
17
  # TLD Detection
@@ -1,3 +0,0 @@
1
- MIT License
2
-
3
- Copyright (c) 2026 1AboveIO
@@ -1,220 +0,0 @@
1
- ---
2
- name: report-writing
3
- description: "Convert compliance audit findings into audience-formatted reports. Four styles: VARS Review Report (Visa's official 2025 template, required verbatim for VARS engagements), Audit Report (compliance team), External Assessment (regulators/external auditors), Management Report (board/C-suite). Use whenever audit output needs to become a deliverable, even just 'write up the findings'."
4
- release-version: 0.42.0
5
- ---
6
- **Updates:** Once/session run `node <skill-base-dir>/release-check.mjs`.
7
- # Report Writing
8
-
9
- Generate compliance reports from structured audit findings. Four report styles target
10
- different audiences — same data, different depth and tone.
11
-
12
- ## Input Format
13
-
14
- Structured findings in Markdown with per-item:
15
- - **Status:** Pass / Fail / Partial / N/A
16
- - **Severity:** Critical / Major / Minor / Observation
17
- - **Category:** e.g., Access Control, Data Protection, Incident Response
18
- - **Observations:** What was found
19
- - **Evidence:** Logs, configs, screenshots, code references
20
- - **Recommendations:** Suggested remediation
21
-
22
- If the input deviates, normalize it to the above structure before generating the report.
23
-
24
- ### VARS-specific input requirement
25
-
26
- The VARS Review Report must be generated from the **full** per-control assessment —
27
- typically the `tracker.md` produced by the `compliance-audit` skill running against the
28
- VARS checklist (`skills/compliance/compliance-audit/references/vars-checklist.md`, or a
29
- parsed equivalent from `reg-parser`). Do **not** start a VARS report from a summary,
30
- verbal findings, or a partial sub-domain review — Visa's report aggregates a complete
31
- control-by-control assessment, and Section 5 of the deliverable explicitly references
32
- the *VARS Control Testing and Remediation Tracking* spreadsheet (which is the same
33
- tracker, in Visa's Excel format).
34
-
35
- If the user asks for a VARS report and you don't see a complete tracker covering all
36
- nine sub-domains, **stop and ask** for it — or offer to run `compliance-audit` first.
37
- A VARS report without the underlying control-level evidence is not a deliverable Visa
38
- will accept.
39
-
40
- ## Report Style Selection
41
-
42
- | Style | Audience | When to use |
43
- |---|---|---|
44
- | **VARS Review Report** | Visa, acquirer leadership | Visa Acceptance Risk Standards engagements — uses Visa's official 2025 template |
45
- | **Audit Report** | Compliance team, internal auditors | Day-to-day remediation tracking, technical deep-dives |
46
- | **External Assessment** | Regulators, external auditors, certification bodies | Formal submissions, certification audits, regulatory filings |
47
- | **Management Report** | C-suite, board, leadership | Quarterly reviews, risk committee briefings, budget justification |
48
-
49
- Select the style based on the stated audience or purpose. If unclear, ask. Default to
50
- Audit Report when the requestor is technical. **If the framework is VARS / Visa
51
- Acceptance Risk Standards, always use the VARS Review Report style** — Visa requires
52
- its template verbatim.
53
-
54
- ## Workflow
55
-
56
- ### 1. Ingest Findings
57
-
58
- 1. Read the audit findings file (Markdown). For VARS, this is the `compliance-audit`
59
- tracker produced against the VARS checklist — it must cover all nine sub-domains.
60
- 2. Parse each finding into: ID, title, category, status, severity, observations, evidence, recommendations.
61
- 3. Validate completeness — flag any finding missing severity or status. For VARS,
62
- additionally verify every sub-domain is represented; if any are missing, stop and
63
- surface the gap to the user before drafting.
64
-
65
- ### 2. Select Style
66
-
67
- Confirm the target style with the user or infer from context:
68
- - "VARS" / "Visa Acceptance Risk Standards" / "for Visa" → **VARS Review Report**
69
- - "for the regulator" → External Assessment
70
- - "for the board" / "executive summary" → Management Report
71
- - "full technical report" / default → Audit Report
72
-
73
- ### 3. Generate Report
74
-
75
- **House style.** Use the nearest `WRITING.md`: start in the findings file's folder (pasted text: the output
76
- folder, else the working directory), then parents up to the repository root; never the home
77
- directory or above. Rate every issue from the evidence first; the style changes
78
- wording, never a rating, a finding or which issues appear. Then write the prose in its voice,
79
- language, terms, sentences and presentation. Keep the template structure, severity and rating scales
80
- (including Status values such as Pass / Fail / Partial), finding IDs and every input count; its
81
- terms apply to prose, not rating values. The request beats WRITING.md, which beats this skill's
82
- wording. Never edit WRITING.md. Bilingual: `write-doc`'s bilingual mode. No WRITING.md: write as
83
- below.
84
-
85
- The VARS Review Report ignores WRITING.md entirely: Visa's template wording and structure stay
86
- verbatim.
87
-
88
- Follow the style-specific template. Reference files provide the full structure:
89
-
90
- - **VARS Review Report:** Read `references/vars-report-template.md` (Visa's official 2025 template)
91
- - **Audit Report:** Read `references/audit-report-template.md`
92
- - **External Assessment:** Read `references/external-assessment-template.md`
93
- - **Management Report:** Read `references/management-report-template.md`
94
-
95
- ### 4. Review and Finalize
96
-
97
- 1. Verify coverage:
98
- - Audit Report: every finding from the input has its own section.
99
- - External Assessment: every finding is mapped to a regulatory requirement.
100
- - Management Report / VARS: findings are aggregated by category/sub-domain with no category dropped.
101
- 2. Confirm severity counts match the input data. For VARS: Section 3.d is **executive**
102
- (a headline plus a 2–3 sentence business posture per sub-domain, no operational
103
- detail); Section 4 is **department-manager** detail, with "Compliance Status" carrying
104
- the tracker's Control Effectiveness Rating (Satisfactory / Improvement Recommended /
105
- Unsatisfactory / N/A; worst rating across the row) and "Findings and Comments" written
106
- as an inline observed → finding → comments narrative in the report's own words (no
107
- source-document/clause/sample citations — those stay in the tracker) with the Actions
108
- Required / Recommendations reproduced verbatim. When the ATPA archetype is in scope,
109
- confirm all TPA controls are consolidated into a single "Third Party Agent" row rather
110
- than scattered across the AACQ sub-domains.
111
- 3. Check that no placeholder text remains (e.g. `{{...}}`, `____`, `MM/YEAR`).
112
- 4. Output as Markdown. If DOCX is requested (the VARS deliverable is typically distributed as
113
- DOCX to match Visa's template), **do not rely on a plain `pandoc` Markdown→DOCX conversion
114
- for the Section 4 table** — pandoc collapses the `<br>` line breaks inside the wide
115
- Findings-and-Comments cells, so the enumerated Actions Required / Recommendations items run
116
- together and appear to be missing. Instead render the DOCX so each cell's `<br>`-separated
117
- lines become **separate paragraphs** (e.g. build it with `python-docx`, or post-process the
118
- pandoc output). In Section 4 specifically:
119
- - split every `<br>` into its own paragraph in the cell, so each Actions Required /
120
- Recommendations item is on its own visible line;
121
- - render `**…**` labels (`Actions Required:`, `Recommendations:`) as real **bold**, not
122
- literal asterisks;
123
- - shade the **Compliance Status** cell by rating (Satisfactory = green, Improvement
124
- Recommended = amber, Unsatisfactory = red, N/A = grey);
125
- - set the page to **landscape** to give the table room.
126
- For PDF, the same line-break requirement applies.
127
-
128
- ---
129
-
130
- ## Style Summaries
131
-
132
- ### VARS Review Report
133
-
134
- Visa's official 2025 template, used verbatim. Six fixed sections with mandated
135
- boilerplate (Purpose paragraph, reliance statement, recommendation summary stem) and
136
- nine fixed sub-domains in canonical order — plus a consolidated **Third Party Agent**
137
- row when the ATPA archetype is in scope. Detailed per-control findings live in the
138
- companion *VARS Control Testing and Remediation Tracking* Excel — the report itself
139
- aggregates one row per sub-domain. The two summary layers serve different audiences:
140
- **Section 3.d is executive** (business posture, 2–3 sentences per sub-domain) and
141
- **Section 4 is for department managers / control owners** (an inline observed → finding
142
- → comments narrative in the report's own words, with verbatim Actions Required /
143
- Recommendations and no duplication of the tracker's evidence citations).
144
-
145
- **Key sections:** Cover, Document History, Distribution List, Executive Summary
146
- (Purpose / Background / VARS Control Assessment / Summary of Findings / Recommendation
147
- Summary), Observations Overview (sub-domain table), Detailed Information (pointer to
148
- Excel tracker), Next Steps.
149
-
150
- **Tone:** Formal, third-person, Visa-facing. Preserve the boilerplate paragraphs
151
- verbatim — paraphrasing breaks reviewer expectations.
152
-
153
- ### Audit Report
154
-
155
- Full technical detail. Every finding gets its own section with evidence, root cause analysis,
156
- remediation steps, priority, and suggested timeline. Appendices contain raw evidence.
157
-
158
- **Key sections:**
159
- 1. Report metadata (scope, period, assessor, framework)
160
- 2. Executive summary (pass/fail counts)
161
- 3. Findings (one per item — full detail)
162
- 4. Remediation plan (prioritized)
163
- 5. Appendices (evidence, methodology, glossary)
164
-
165
- **Tone:** Technical, precise, neutral. Use passive voice sparingly. Reference specific
166
- controls, configurations, and code paths.
167
-
168
- ### External Assessment
169
-
170
- Formal language suitable for regulatory submission. Organized by regulatory requirement,
171
- not by internal finding ID. Includes gap analysis matrix and attestation-ready statements.
172
-
173
- **Key sections:**
174
- 1. Cover page and scope statement
175
- 2. Assessment methodology
176
- 3. Compliance status by requirement (article/section mapping)
177
- 4. Gap analysis matrix (requirement × status × severity)
178
- 5. Remediation roadmap
179
- 6. Attestation statement
180
- 7. Appendices (evidence index, assessor qualifications)
181
-
182
- **Tone:** Formal, objective, structured. Reference regulation articles explicitly
183
- (e.g., "Article 32(1)(a) of Regulation (EU) 2016/679"). Avoid colloquial language.
184
-
185
- ### Management Report
186
-
187
- Concise, business-oriented. Leads with a one-page executive summary. Uses visual
188
- indicators (counts, heatmap descriptions) rather than technical evidence.
189
-
190
- **Key sections:**
191
- 1. Executive summary (1 page max — overall posture, key risks, headline numbers)
192
- 2. Risk heatmap (critical/major/minor counts by category)
193
- 3. Business impact analysis (what gaps mean operationally and financially)
194
- 4. Recommended actions with effort estimates (cost, time, owner)
195
- 5. Progress since last assessment (if prior data available)
196
- 6. Appendix (methodology note, detailed data reference)
197
-
198
- **Tone:** Business language, action-oriented. Quantify impact where possible.
199
- Avoid jargon — explain technical concepts in business terms.
200
-
201
- ---
202
-
203
- ## Output Conventions
204
-
205
- - **File naming:** `{style}-{framework}-{YYYY-MM-DD}.md`
206
- - Example: `audit-report-SOC2-2026-03-30.md`
207
- - VARS example: `vars-review-report-{acquirer}-2026-03-30.md`
208
- - **Severity color coding** (for Markdown rendering):
209
- - 🔴 Critical | 🟠 Major | 🟡 Minor | 🔵 Observation
210
- - **Finding IDs:** Preserve original IDs from the input. If absent, assign sequential IDs: `F-001`, `F-002`, etc.
211
- - **Cross-references:** Link findings to remediation items and evidence appendices by ID.
212
-
213
- ## Edge Cases
214
-
215
- - **No critical findings:** Lead the executive summary with overall compliance posture, not absence of criticals.
216
- - **Mixed frameworks:** If findings span multiple frameworks (e.g., SOC 2 + PCI DSS), organize by framework first, then by requirement.
217
- - **Incomplete evidence:** Flag as "Evidence Pending" — do not omit the finding.
218
- - **Prior assessment data unavailable:** Omit the "Progress" section in Management Report; note "Baseline assessment — no prior data" in methodology.
219
- - **VARS sub-domain with no findings:** Still include the row in Section 4 and the bullet in Section 3.d — Compliance Status "Satisfactory", Findings and Comments an inline observed-then-finding narrative closing with "No remediation required." (matching the tracker's Satisfactory Issue Description) — Visa expects all nine sub-domains to appear (plus the Third Party Agent row when ATPA is in scope).
220
- - **VARS legacy numbering:** The official 2025 template skips index 9 in the Section 4 table (Regulatory Risk is labelled #10). The `references/vars-report-template.md` uses sequential 1–9; switch to legacy numbering only if the Visa engagement lead asks.