@skein-code/cli 0.3.15 → 0.3.16

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.
@@ -98,6 +98,16 @@ exact hash, and winnowed hashes. The generation cache is cleared on load, full
98
98
  build, targeted upsert, and deletion. Audit receipts never retain source,
99
99
  normalized tokens, literal contents, prompts, or raw retrieval failures.
100
100
 
101
+ Duplication findings are folded into the existing completion record rather than
102
+ creating a parallel completion state. The enforcement is explicitly
103
+ warning-only until fixture benchmarks establish the required precision. Active
104
+ matches receive stable, bounded ids; the optional `duplication_audit` read tool
105
+ is exposed only while unsuppressed findings exist. Suppression is exact-match,
106
+ reason-coded, and persisted as a content-free audit receipt. Repaired/deleted/
107
+ small functions produce a `clear` receipt for paths that previously carried an
108
+ active finding, so the summary cannot retain stale warnings. Legacy receipts
109
+ without ids remain readable and are never suppressible.
110
+
101
111
  ### Prompt layers
102
112
 
103
113
  The runner keeps the cacheable system prefix separate from mutable task state:
@@ -9,7 +9,7 @@ one of the milestones below.
9
9
 
10
10
  - Product name: `Skein`; primary executable: `skein`.
11
11
  - Compatibility executables: `mosaic` and `mosaic-code`.
12
- - Current repository version: `0.3.15`.
12
+ - Current repository version: `0.3.16`.
13
13
  - Runtime requirement: Node.js `>=22.16.0` (the runtime uses unflagged
14
14
  `node:sqlite` with FTS5, and current CLI/build dependencies require this
15
15
  Node 22 baseline).
@@ -41,8 +41,8 @@ npm audit --omit=dev
41
41
  npm run release:verify -- --output-dir artifacts/package
42
42
  ```
43
43
 
44
- The latest verified package is `skein-code-cli-0.3.15.tgz`. The verifier writes
45
- its SHA-256 to `artifacts/package/skein-code-cli-0.3.15.tgz.sha256`, and CI
44
+ The latest verified package is `skein-code-cli-0.3.16.tgz`. The verifier writes
45
+ its SHA-256 to `artifacts/package/skein-code-cli-0.3.16.tgz.sha256`, and CI
46
46
  retains the checksum beside the package metadata. The checksum is deliberately
47
47
  not copied into this packaged document because doing so would change the
48
48
  archive it describes.
@@ -57,7 +57,7 @@ short-height case. The current full-suite count is recorded from the latest
57
57
  ### P0-D: Warning-only repository reuse and duplication audit
58
58
 
59
59
  Version `0.3.14` added the prompt ladder and pre-write `ReuseReceipt`. Version
60
- `0.3.15` adds a post-write deterministic audit for ordinary TS/TSX/JS/JSX/MJS/
60
+ `0.3.15` added a post-write deterministic audit for ordinary TS/TSX/JS/JSX/MJS/
61
61
  CJS functions. The audit captures a content-free baseline before mutation,
62
62
  normalizes identifiers plus literals, uses exact hashes and 10-token
63
63
  shingle/winnowing Jaccard matching, and runs before changed-path index refresh.
@@ -71,6 +71,16 @@ never a false pass. The next slice is completion-gate suppression UX and
71
71
  deterministic benchmark/threshold calibration. Type-4 semantic equivalence is
72
72
  not promised.
73
73
 
74
+ Version `0.3.16` keeps the same warning-only enforcement while integrating
75
+ duplication summaries into the single completion receipt and every output
76
+ surface. Active matches receive stable 24-character ids. The read-only
77
+ `duplication_audit` tool is disclosed only when unsuppressed matches exist and
78
+ can suppress one exact match with a reason code plus a bounded explanation;
79
+ wildcard/global suppression, credentials, and code-block reasons are rejected.
80
+ Suppression is an audit event, never a verification bypass. A repaired,
81
+ deleted, or below-threshold function emits a clear receipt so old warnings do
82
+ not persist. Older `0.3.15` receipts without match ids remain readable.
83
+
74
84
  ### P0: Continuous Integration And Release Reproducibility
75
85
 
76
86
  `.github/workflows/ci.yml` now covers Node 22 on macOS and Linux. It runs
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@skein-code/cli",
3
- "version": "0.3.15",
3
+ "version": "0.3.16",
4
4
  "description": "A context-first, model-agnostic coding agent with an auditable terminal workspace.",
5
5
  "type": "module",
6
6
  "license": "MIT",
@@ -16,6 +16,9 @@
16
16
  },
17
17
  "skein": {
18
18
  "releaseNotes": [
19
+ "Duplication warnings now aggregate into the single completion receipt without changing verified status",
20
+ "Exact match ids support bounded, reason-coded suppression with audit and credential/code-block safeguards",
21
+ "Duplication audit tools are disclosed only when active warnings exist and repaired paths clear stale matches",
19
22
  "Warning-only TS/JS duplication audit compares new functions with the pre-write index generation",
20
23
  "Deterministic Type-1/2 and Type-3 receipts retain only hashes, locations, scores, and bounded counts",
21
24
  "Ordinary edits, renames, moves, deletions, small functions, tests, generated paths, and failed writes stay quiet",