@dzhechkov/harness-cli 0.7.2 → 0.7.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.dz-manifest.json +27 -7
- package/README.md +44 -6
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +600 -14
- package/dist/cli.js.map +1 -1
- package/dist/known-flags.d.ts +13 -0
- package/dist/known-flags.d.ts.map +1 -0
- package/dist/known-flags.js +284 -0
- package/dist/known-flags.js.map +1 -0
- package/package.json +1 -1
- package/sbom.json +56 -6
- package/src/cli.ts +559 -13
- package/src/known-flags.ts +283 -0
package/.dz-manifest.json
CHANGED
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
},
|
|
10
10
|
{
|
|
11
11
|
"path": "README.md",
|
|
12
|
-
"sha256": "
|
|
12
|
+
"sha256": "1f117cb9a9e3ebf8e1ddd9fcd9227c64afa93c4dee354851befdfb1c6f1d1e98"
|
|
13
13
|
},
|
|
14
14
|
{
|
|
15
15
|
"path": "dist/bin.d.ts",
|
|
@@ -33,15 +33,15 @@
|
|
|
33
33
|
},
|
|
34
34
|
{
|
|
35
35
|
"path": "dist/cli.d.ts.map",
|
|
36
|
-
"sha256": "
|
|
36
|
+
"sha256": "2adf5f4cd1cdb6f9300c50b67acf6031eb8dfa48eed9e44cceb0e87b705a3335"
|
|
37
37
|
},
|
|
38
38
|
{
|
|
39
39
|
"path": "dist/cli.js",
|
|
40
|
-
"sha256": "
|
|
40
|
+
"sha256": "86d6f102999ac1b5183775cd8d721b71050ac55b024113f23cca6be1fe494a6c"
|
|
41
41
|
},
|
|
42
42
|
{
|
|
43
43
|
"path": "dist/cli.js.map",
|
|
44
|
-
"sha256": "
|
|
44
|
+
"sha256": "87e420d5db13a85a12cb185d9da2874c788bfdf26fd44a6400f3799a4b835ccc"
|
|
45
45
|
},
|
|
46
46
|
{
|
|
47
47
|
"path": "dist/core-compat.d.ts",
|
|
@@ -75,6 +75,22 @@
|
|
|
75
75
|
"path": "dist/index.js.map",
|
|
76
76
|
"sha256": "02b6b6f1b17a53d652a75555d185a20ea5d3e3110aa915ab228bf5521b0ce5fb"
|
|
77
77
|
},
|
|
78
|
+
{
|
|
79
|
+
"path": "dist/known-flags.d.ts",
|
|
80
|
+
"sha256": "40403ed4e24cdf95cb2757653485d7cb4650ef8496af96927ab503c2a189c598"
|
|
81
|
+
},
|
|
82
|
+
{
|
|
83
|
+
"path": "dist/known-flags.d.ts.map",
|
|
84
|
+
"sha256": "4ac14404f0c1d3c75c215fd7eb7b49c7b0b5d2e3f9fe9a22851117fc8944975b"
|
|
85
|
+
},
|
|
86
|
+
{
|
|
87
|
+
"path": "dist/known-flags.js",
|
|
88
|
+
"sha256": "a3a40afcc63df47a39512dfc243f989fdf5dabe205342d76ee9ca77e33646976"
|
|
89
|
+
},
|
|
90
|
+
{
|
|
91
|
+
"path": "dist/known-flags.js.map",
|
|
92
|
+
"sha256": "8e9dadaf3a205827c7b5dec03a73b2ab15a6ea775e4d6fc58314065c2a43851b"
|
|
93
|
+
},
|
|
78
94
|
{
|
|
79
95
|
"path": "keys/README.md",
|
|
80
96
|
"sha256": "142fc5d0d59003476b8e7367d6fc21fe40ce9e0bf70159318a05abdb10502b8a"
|
|
@@ -85,7 +101,7 @@
|
|
|
85
101
|
},
|
|
86
102
|
{
|
|
87
103
|
"path": "package.json",
|
|
88
|
-
"sha256": "
|
|
104
|
+
"sha256": "95d92b6f95141dc44061f0d728d7df200d96518ee42f9ff9174cd0539263cc52"
|
|
89
105
|
},
|
|
90
106
|
{
|
|
91
107
|
"path": "src/bin.ts",
|
|
@@ -93,7 +109,7 @@
|
|
|
93
109
|
},
|
|
94
110
|
{
|
|
95
111
|
"path": "src/cli.ts",
|
|
96
|
-
"sha256": "
|
|
112
|
+
"sha256": "9564c17c05ac595a2db3eef3ea547b39db88837c84e6efe6c1716fb9f7e16018"
|
|
97
113
|
},
|
|
98
114
|
{
|
|
99
115
|
"path": "src/core-compat.ts",
|
|
@@ -102,8 +118,12 @@
|
|
|
102
118
|
{
|
|
103
119
|
"path": "src/index.ts",
|
|
104
120
|
"sha256": "d4258f3b183d03047aa07399ae96bdb2b3af83f0005127a24a39f8932982bf78"
|
|
121
|
+
},
|
|
122
|
+
{
|
|
123
|
+
"path": "src/known-flags.ts",
|
|
124
|
+
"sha256": "59b255c1ba248365fe5e9432d7ec8933e73bfcb9cd2ce8e19cf8f85f96137163"
|
|
105
125
|
}
|
|
106
126
|
]
|
|
107
127
|
},
|
|
108
|
-
"signature": "
|
|
128
|
+
"signature": "Ay/2zRjJGEi+9Xp56MdbVaRnDH2A7zacchPcrzYnMCIZd8VcGVlzHUD8f64s7Zgc6TJbO1XkMDEGZl5j5rfZBg=="
|
|
109
129
|
}
|
package/README.md
CHANGED
|
@@ -266,7 +266,7 @@ you know exactly which file is at fault, and you know whose defect it is.
|
|
|
266
266
|
|
|
267
267
|
## User Journey — from install to mastery
|
|
268
268
|
|
|
269
|
-
All
|
|
269
|
+
All 75 commands (MEASURED — reproducer: `grep -c "^ case '" src/cli.ts`, the dispatch cases) mapped to a real workflow:
|
|
270
270
|
|
|
271
271
|
```
|
|
272
272
|
DISCOVER → INSTALL → USE → CREATE → MAINTAIN → SHARE
|
|
@@ -1768,9 +1768,9 @@ runs a command that MEASURES the declared artifacts itself. It refuses a null re
|
|
|
1768
1768
|
never recorded as done), an absent or partially-present artifact set, and a stage that declares nothing
|
|
1769
1769
|
to witness — so a stage that did not happen can no longer be recorded, which the old mechanism allowed.
|
|
1770
1770
|
|
|
1771
|
-
## All Commands (
|
|
1771
|
+
## All Commands (75)
|
|
1772
1772
|
|
|
1773
|
-
*(
|
|
1773
|
+
*(73 MEASURED — reproducer: `grep -c "^ case '" src/cli.ts`, the dispatch cases.)*
|
|
1774
1774
|
|
|
1775
1775
|
```
|
|
1776
1776
|
dz setup --target <name> [--preset <name>] [--select id,id,...] [--skills-dir <dir>] [--memory agentdb] [--no-memory] [--no-hooks] [--install-driver] [--force]
|
|
@@ -1781,7 +1781,7 @@ dz teach "<pattern>" [--reward <0-1>] [--domain <name>] [--type rule
|
|
|
1781
1781
|
dz teach --reinforce "<dzId-or-exact-text>" [--project <dir>] # bump an existing learned pattern instead of writing a near-duplicate
|
|
1782
1782
|
dz teach --from-json <file> [--project <dir>] [--no-mirror] [--harmonize] # bulk-import a `dz recall --all --json` export; prints a harmonize dry-run advisory
|
|
1783
1783
|
dz consolidate [--sessions-dir <dir>] [--project <dir>] [--no-mirror]
|
|
1784
|
-
dz recall "<query>" [--limit <N>] [--domain <name>] [--semantic | --no-semantic] [--project <dir>] # hybrid lexical+vector when the vector tier is enabled; --domain BOOSTS same-domain lessons (never filters)
|
|
1784
|
+
dz recall "<query>" [--limit <N>] [--domain <name>] [--semantic | --no-semantic] [--full] [--project <dir>] # hybrid lexical+vector when the vector tier is enabled; --domain BOOSTS same-domain lessons (never filters)
|
|
1785
1785
|
dz recall --all [--json] [--stats] [--include-domain <name,…>] # export the learned store (held-out domains are withheld unless named), or inspect learning stats/top uses
|
|
1786
1786
|
dz recall --books "<query>" [--book <slug>] # digitized-book KUs; --book narrows to one book
|
|
1787
1787
|
dz vector status [--project <dir>] [--json] # semantic tier: engine availability, mirrored vs lexical counts, pending queue
|
|
@@ -1837,6 +1837,9 @@ dz epoch-replay --emit [--project <dir>] [--limit <N>] [--seed <N>] [--margin <
|
|
|
1837
1837
|
dz epoch-replay --judge <filled-work-order.json> [--out <file>] [--json] # blind judge prompts from the filled plans — the file carries {id, prompt} ONLY (no assignment, no arm names); refuses an order whose digest or seed-derived assignment does not check out; half-pairs skipped WITH A REASON, on stdout
|
|
1838
1838
|
dz epoch-replay --score <judgments.json> --work-order <file> [--slice <name>] [--json] # un-blind against the VERIFIED pre-registered assignment; ONE paired binomial over DECISIVE pairs (ties excluded, reported) → SUPPORTED only when the lift interval (2p−1) lies entirely above zero; FALSIFIED only on harm or a passed non-superiority test (lift upper bound below the margin PRE-REGISTERED in the work order, default 0.05, at 10+ decisive pairs); else INCONCLUSIVE (min 5 decisive pairs). Refuses a forged work order, a --margin flag, or duplicate judgement ids; the verdict is data, not an exit code
|
|
1839
1839
|
dz score --slug <feature> [--project <dir>] [--json] # process scorecard for ONE feature-adr run, from its artifacts: ADR confirmation, discrimination proof, cross-model QE grade, live verification, README-first, learning loop, amendments — DESCRIPTIVE-ONLY (a low score exits 0); evidence lines are shown so the reader judges the heuristics
|
|
1840
|
+
dz recap [--day|--week|--month] [--at <ISO date>] [--project <dir>] [--json] # what was done over a window, from records only. Deliveries carry the grade an independent review STATED — a report naming two different grades is reported AMBIGUOUS, never guessed; registry publishes come from a cache (51 packages cost 18.3s over the network, MEASURED — never inside a report); gate verdicts and knowledge reuse come from the local stores. --quarter/--half-year/--year are RECOGNISED and REFUSED with the real span in days: there is exactly ONE complete quarter and the longest record is 174 days, so a quarter-over-quarter comparison is arithmetically impossible and a year would be fabrication. Every section carries its own data-start date, and "the source was not read" never prints as a zero. Contaminated measures are NOT computed and the report says so: commit count (this project mandates a commit per logical change), lines changed (352 of 1318 commits are docs), token spend (self-declared an estimate, once wrong sixfold), learning-event volume (the curve tracks when hooks were installed), inventory counts (monotonic — they can only flatter), lesson count (54% of the pool has never been read). exit 0 reported / 2 refused
|
|
1841
|
+
dz provenance-check --manifest <sources.json> [--project <dir>] [--json] # nothing goes out citing a source that may not leave this machine. Checks PROVENANCE, not words: every claim in a draft names its source, and a source is cleared only when it is a KNOWN kind that resolves safely. Repo paths are classified by `git -C <root> check-ignore` over the RESOLVED path — so a symlink into an ignored directory is refused, not cleared (MEASURED: git classifies the string and never dereferences), and the verdict does not change with your working directory. Store records need naming in the git-TRACKED `provenance-public.json`, so declaring one public is a reviewable commit rather than a field inside an ignored store. Anything else is refused: an undeclared kind is never inferred from the path's shape. exit 0 allowed / 1 blocked / 3 NOT ESTABLISHED — an empty manifest, an unreadable one, or an oracle that did not run is never a pass. **What it cannot do, said on the passing path too:** it proves what was CITED. It cannot see a paraphrase with no citation, nor confidential text pasted by hand into an allowed file. Read the draft.
|
|
1842
|
+
dz name-check [--command <n>] [--module <basename>] [--export <a,b>] [--project <dir>] [--json] # is this name free, BEFORE a line of code? Twice in one day a collision broke the build outright — `dz retro` was already a command, `decideProvenance` already an export — and both were answerable in advance. Scans workspace SOURCE and never `dist`, because a stale build answers 'free' confidently (MEASURED: half an hour of convincing live runs against a previous build while tsc was red). Checks a command name against the dispatcher AND the help block, a module basename against every package's src/, and exported identifiers against every declaration — naming the DECLARING file, not the barrel. exit 0 all free / 1 at least one taken / 2 nothing asked or the scan read nothing — an empty sweep is never a clean bill. **Honest limit, printed on the passing path:** it reads declarations, so a re-export under a different name stays the build's job.
|
|
1840
1843
|
dz feature-adr-checkpoint (--slug <feature> | --feature-dir <abs>) --stage <s> --input-hash <h> --result <json> [--artifact a,b] [--json]
|
|
1841
1844
|
dz reqe [--slug <feature> [--done --report <f>]] [--project <dir>] [--json] # the re-QE debt ledger: a usage-switched feature-adr run whose Step-8 QE ran on the coder's OWN family (cross-model guard suspended, FR-2.9) records a debt; list debts (also surfaced by dz usage), print the cross-family review brief, settle FAIL-CLOSED against an existing GRADED report (the run's own 08_qe_report.md — even hard-linked — can never settle its own debt); settlement lands in 08_qe_report.md, evidence rotates to reqe-settled.json
|
|
1842
1845
|
dz qe-bridge --family claude --slug <feature> [--coder-family codex|claude] [--model <id>] [--files a,b] [--out <f>] [--timeout <s>] [--allow-same-family] [--json] # the REVERSE QE bridge (Codex-hosted → Claude reviewer): the reviewer runs ISOLATED (an empty temp cwd + --safe-mode --strict-mcp-config --tools '' --no-session-persistence, so no CLAUDE.md/skills/plugins/hooks/MCP load) and its verdict is read from the --output-format json RESULT ENVELOPE, so text a customization printed onto the same stdout can never become a signoff. Probes the model first; sends SCOPED extracts under a loud 200k-char ceiling; the grade must agree across three LAST-anchored channels AND the marker must be the final content — empty/gradeless/mismatched/miscounted output is a named failure with an audit record under features/<slug>/.fa-state/qe-bridge/, never a clean review. exit 0 signoff parsed (ANY grade — it reports, it does not gate) / 1 named failure / 2 usage. DZ_QE_BRIDGE_CLAUDE_BIN is a TEST SEAM (recorded as binOverride:true)
|
|
@@ -1873,6 +1876,41 @@ dz import-ecc [--local-path <dir>] [--select id,id,...] [--limit N] [--out
|
|
|
1873
1876
|
dz help
|
|
1874
1877
|
```
|
|
1875
1878
|
|
|
1879
|
+
**Closeness, not a rank surrogate (feature `recall-true-closeness`).** Each hit now carries `sim=` —
|
|
1880
|
+
the semantic leg's real cosine — with `▲` above the measured relevance floor for the query's language
|
|
1881
|
+
and `▽` below it (ru 0.38 / en 0.31, calibrated 2026-07-09 on a 32-probe labeled set). A lexical-only
|
|
1882
|
+
hit, and any engine whose score is not a cosine, shows `sim=—`: substituting a differently-scaled
|
|
1883
|
+
number is the lie this replaced. Before this, `relevance` in `--json` was an RRF RANK surrogate —
|
|
1884
|
+
MEASURED, the top hit scored `0.0164` for a meaningful query and for nonsense alike, so no threshold
|
|
1885
|
+
was possible.
|
|
1886
|
+
|
|
1887
|
+
Two axes, never merged: the leading `[0.86]` is the lesson's own reward (what it earned), `sim=` is
|
|
1888
|
+
closeness (whether it is about what you asked). **The list is still ordered by rank plus learning
|
|
1889
|
+
signals, so the `sim` numbers will legitimately appear out of order** — that is not a bug, and a
|
|
1890
|
+
reader who re-ranks by hand loses the evidence signal. When nothing clears the floor the tool says so
|
|
1891
|
+
once, in words, instead of leaving five ▽ rows to read like five answers. Lessons print at 160
|
|
1892
|
+
characters; `--full` prints them whole, still one line per hit.
|
|
1893
|
+
|
|
1894
|
+
Honest limit: the floors were calibrated on a 103-pattern store and this one holds 277. MEASURED
|
|
1895
|
+
2026-08-24 — a nonsense query still produced one `▲` at 0.33 against the 0.31 English floor. The
|
|
1896
|
+
number now makes that visible; recalibration is filed separately.
|
|
1897
|
+
|
|
1898
|
+
**The apply leg now records itself (feature `recall-records-itself`).** MEASURED 2026-08-24: `dz
|
|
1899
|
+
recall` wrote NOTHING to `.dz/recall-usage.jsonl` — 1106 rows before a real call and 1106 after — so
|
|
1900
|
+
"how many lessons were recalled" was underivable, and the pipeline banner asserted a hardcoded
|
|
1901
|
+
`--recalled 3` at three call sites instead of a number anyone could check. Every recall with a
|
|
1902
|
+
measured closeness now appends a row carrying that cosine.
|
|
1903
|
+
|
|
1904
|
+
Only measured hits are recorded, and the gap is PRINTED rather than hidden: the log's `score` is
|
|
1905
|
+
defined as cosine relevance and its validator requires a finite number, so writing an RRF rank there
|
|
1906
|
+
would mix two scales in one field — the exact lie the closeness work removed from the display. A run
|
|
1907
|
+
that records fewer rows than it showed says so, with the reason. A project with no vector tier
|
|
1908
|
+
records nothing, and its output is unchanged.
|
|
1909
|
+
|
|
1910
|
+
PRIVACY, stated plainly: the row carries the query text, exactly as the recall-hook rows already do.
|
|
1911
|
+
`.dz/` is gitignored and this store is prompt-class private by policy — the same protection, the same
|
|
1912
|
+
file, now with your interactive queries in it too.
|
|
1913
|
+
|
|
1876
1914
|
## Global: `dz --version` / `-v` / `dz version`
|
|
1877
1915
|
|
|
1878
1916
|
```bash
|
|
@@ -4056,10 +4094,10 @@ npx @dzhechkov/p-replicator init
|
|
|
4056
4094
|
|
|
4057
4095
|
## Status
|
|
4058
4096
|
|
|
4059
|
-
`v0.7.
|
|
4097
|
+
`v0.7.4` — **a signature-only republish.** `0.7.0` shipped through `pnpm publish` rather than
|
|
4060
4098
|
`dz publish`, so the re-signing step was skipped and 17 of 497 files in the published core did not
|
|
4061
4099
|
match their signed hashes — the content was correct, the manifest was ten hours stale. Nothing in
|
|
4062
|
-
the shipped behaviour changes between `0.7.0` and `0.7.
|
|
4100
|
+
the shipped behaviour changes between `0.7.0` and `0.7.4`; the integrity check stops reporting these
|
|
4063
4101
|
packages as tampered. The one code change is a TEST: the compat case that asserted the workspace
|
|
4064
4102
|
core sits exactly on `MIN_CORE` is split into an integration half and a boundary half, so a patch
|
|
4065
4103
|
bump of core no longer reddens it and `MIN_CORE` need not claim a version the CLI does not require.
|
package/dist/cli.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"AAAA;;;;GAIG;
|
|
1
|
+
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|