@dzhechkov/harness-cli 0.6.1 → 0.7.0
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 +8 -252
- package/README.md +41 -3
- package/dist/cli.d.ts +9 -0
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +454 -32
- package/dist/cli.js.map +1 -1
- package/dist/core-compat.d.ts +1 -1
- package/dist/core-compat.d.ts.map +1 -1
- package/dist/core-compat.js +4 -1
- package/dist/core-compat.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -0
- package/dist/index.js.map +1 -1
- package/package.json +2 -2
- package/sbom.json +7 -617
- package/src/cli.ts +432 -26
- package/src/core-compat.ts +4 -1
- package/src/index.ts +3 -0
package/.dz-manifest.json
CHANGED
|
@@ -4,21 +4,13 @@
|
|
|
4
4
|
"pack": "harness-cli",
|
|
5
5
|
"files": [
|
|
6
6
|
{
|
|
7
|
-
"path": "
|
|
8
|
-
"sha256": "
|
|
7
|
+
"path": "LICENSE",
|
|
8
|
+
"sha256": "3b93f7070f6843f37e0cae255f7caff22b466a4017fd2020d7d3216237e5a701"
|
|
9
9
|
},
|
|
10
10
|
{
|
|
11
11
|
"path": "README.md",
|
|
12
12
|
"sha256": "696aae63a95e8f8726eecc1aa0e68f20d7980e99bb4008b22f2e1058ca67c6c0"
|
|
13
13
|
},
|
|
14
|
-
{
|
|
15
|
-
"path": "coverage/coverage-final.json",
|
|
16
|
-
"sha256": "d2eef62228d4f2b31f5c7fca703f0f6844cf517d41be9dee516f3489f5babfec"
|
|
17
|
-
},
|
|
18
|
-
{
|
|
19
|
-
"path": "coverage/coverage-summary.json",
|
|
20
|
-
"sha256": "981eef381eb1e9a040a31eaa561ea078c6f6711d9908990e796d5213d6ffe89f"
|
|
21
|
-
},
|
|
22
14
|
{
|
|
23
15
|
"path": "dist/bin.d.ts",
|
|
24
16
|
"sha256": "1d651fdfe05fc306c857bbbee44c395b63b39c1e0c53a8166eb7ca43c6cfa157"
|
|
@@ -41,15 +33,15 @@
|
|
|
41
33
|
},
|
|
42
34
|
{
|
|
43
35
|
"path": "dist/cli.d.ts.map",
|
|
44
|
-
"sha256": "
|
|
36
|
+
"sha256": "ea26d4cfd1265fc9f2397a17055580425ddf1ee312e0f28a06a214804a58906a"
|
|
45
37
|
},
|
|
46
38
|
{
|
|
47
39
|
"path": "dist/cli.js",
|
|
48
|
-
"sha256": "
|
|
40
|
+
"sha256": "aa547fee89f14b634fb3b95f95ccbe1bfcc3f29a1c8f11b01a4ecc98ff3e736d"
|
|
49
41
|
},
|
|
50
42
|
{
|
|
51
43
|
"path": "dist/cli.js.map",
|
|
52
|
-
"sha256": "
|
|
44
|
+
"sha256": "11c89da8d9b115a70397da792e9b2220e32936ecebcd2e26ab03963c14fc56d8"
|
|
53
45
|
},
|
|
54
46
|
{
|
|
55
47
|
"path": "dist/core-compat.d.ts",
|
|
@@ -93,7 +85,7 @@
|
|
|
93
85
|
},
|
|
94
86
|
{
|
|
95
87
|
"path": "package.json",
|
|
96
|
-
"sha256": "
|
|
88
|
+
"sha256": "c8e09eb658132733bf3fbd6e4b54eaa0e8084264fddcd279e663e32809a9c485"
|
|
97
89
|
},
|
|
98
90
|
{
|
|
99
91
|
"path": "src/bin.ts",
|
|
@@ -101,7 +93,7 @@
|
|
|
101
93
|
},
|
|
102
94
|
{
|
|
103
95
|
"path": "src/cli.ts",
|
|
104
|
-
"sha256": "
|
|
96
|
+
"sha256": "b4f400b3e08cb7bb6326f973ca09c87411dd942ae9c8cdcd9d2d27dc562dac1f"
|
|
105
97
|
},
|
|
106
98
|
{
|
|
107
99
|
"path": "src/core-compat.ts",
|
|
@@ -110,244 +102,8 @@
|
|
|
110
102
|
{
|
|
111
103
|
"path": "src/index.ts",
|
|
112
104
|
"sha256": "76c2dc1598e72d11df59319cc64fb2aa39b8c3af4eb3077f66598f4f2a3323c0"
|
|
113
|
-
},
|
|
114
|
-
{
|
|
115
|
-
"path": "test/agents-sync.test.ts",
|
|
116
|
-
"sha256": "32606890dc57d58257e6b4a38246acb343eea88b6e4b2f643f061325a34d066a"
|
|
117
|
-
},
|
|
118
|
-
{
|
|
119
|
-
"path": "test/amendment-check-cli.test.ts",
|
|
120
|
-
"sha256": "3dd543fd3032f1fca5c063af98a7501b4cccb9d7e42f6c307074b67f2d55d231"
|
|
121
|
-
},
|
|
122
|
-
{
|
|
123
|
-
"path": "test/cli.test.ts",
|
|
124
|
-
"sha256": "d9adcce84b509e00213bda59a0948eca90d83bdd2fdbbc86aee5ce11d9176940"
|
|
125
|
-
},
|
|
126
|
-
{
|
|
127
|
-
"path": "test/command-count.test.ts",
|
|
128
|
-
"sha256": "d9677688116c0a35591cb7e53ab1502566e44336959ac0ea449f5e8a1c5e31e3"
|
|
129
|
-
},
|
|
130
|
-
{
|
|
131
|
-
"path": "test/core-compat-guard.test.ts",
|
|
132
|
-
"sha256": "98086d0b6bd7ce32cc844e0cbbc710c4dbf009389c1d020aed48ced2de8acd57"
|
|
133
|
-
},
|
|
134
|
-
{
|
|
135
|
-
"path": "test/core-compat.test.ts",
|
|
136
|
-
"sha256": "c54d5aa80a2455a396b396ff9fc398c141c3be4ec9c830e0941f830658758866"
|
|
137
|
-
},
|
|
138
|
-
{
|
|
139
|
-
"path": "test/core-import-floor.test.ts",
|
|
140
|
-
"sha256": "948ce5017d7b512f7f32c817f8d1f5cbc5ede7d7c3f2788456ec5d24b8983f14"
|
|
141
|
-
},
|
|
142
|
-
{
|
|
143
|
-
"path": "test/discrimination-check-cli.test.ts",
|
|
144
|
-
"sha256": "d0ec5796bc526d45cdad9041ea7357afc065917b347cf5421ec7d2696106b08c"
|
|
145
|
-
},
|
|
146
|
-
{
|
|
147
|
-
"path": "test/epoch-replay-cli.test.ts",
|
|
148
|
-
"sha256": "a5a48585b565288ca1ea96030b02b2ccb37a621ef7b3cfe54cd7aaa7164d6904"
|
|
149
|
-
},
|
|
150
|
-
{
|
|
151
|
-
"path": "test/feature-adr-record-cli.test.ts",
|
|
152
|
-
"sha256": "e1a2687a1ae2bc2d32cbcc852487d30f9451ce1ea4a132e188186dd4251c49d1"
|
|
153
|
-
},
|
|
154
|
-
{
|
|
155
|
-
"path": "test/fixtures/discrimination-check/fake-runner.sh",
|
|
156
|
-
"sha256": "126bbd1ba9c08ef9de826cfa21df3981720e4bc36cd993dff28e0de435cbebae"
|
|
157
|
-
},
|
|
158
|
-
{
|
|
159
|
-
"path": "test/fixtures/discrimination-check/fixture.py",
|
|
160
|
-
"sha256": "bb413a8b6e9dc597eb298e7646fb84e23ccd3e117eb61201776ef3e9e27a0e0a"
|
|
161
|
-
},
|
|
162
|
-
{
|
|
163
|
-
"path": "test/fixtures/install-layouts-helpers.ts",
|
|
164
|
-
"sha256": "7c1d53c295ec4cb7ee8e3036b663f20d660a1acff35dbcb5c99257aed7268b68"
|
|
165
|
-
},
|
|
166
|
-
{
|
|
167
|
-
"path": "test/fixtures/mutation-gate-undefended/lib/env-guard.js",
|
|
168
|
-
"sha256": "922d75852ea37cfc0e0f81f0c49918e20950f4c31d9523798cbd5c7437fdffcc"
|
|
169
|
-
},
|
|
170
|
-
{
|
|
171
|
-
"path": "test/fixtures/mutation-gate-undefended/lib/flaky-load.js",
|
|
172
|
-
"sha256": "bb3cda584546c43f22ab46c1c6a27b563f7ede3ed4a66530b6b35ad9f7eefc9e"
|
|
173
|
-
},
|
|
174
|
-
{
|
|
175
|
-
"path": "test/fixtures/mutation-gate-undefended/lib/guard.js",
|
|
176
|
-
"sha256": "69182b5c1034eda2fcf072b87847dfd27c12ddf2621f62e8db94b78f55f797cd"
|
|
177
|
-
},
|
|
178
|
-
{
|
|
179
|
-
"path": "test/fixtures/mutation-gate-undefended/lib/tla-mod.mjs",
|
|
180
|
-
"sha256": "c0a147f7c2d599b360fa9d1bb72c01be3b6b0a7b167cb7d508340382b3d8d619"
|
|
181
|
-
},
|
|
182
|
-
{
|
|
183
|
-
"path": "test/fixtures/mutation-gate-undefended/package.json",
|
|
184
|
-
"sha256": "cdceb0264c7d99c89123365ddfdc2ceb07339c2691e5e604304ee04b433b1c0b"
|
|
185
|
-
},
|
|
186
|
-
{
|
|
187
|
-
"path": "test/fixtures/mutation-gate-undefended/registry-defended.json",
|
|
188
|
-
"sha256": "037bcac91dae0acbd8eb81dbb33b79fc7208f6106aed8149dbecdf226a8b0e41"
|
|
189
|
-
},
|
|
190
|
-
{
|
|
191
|
-
"path": "test/fixtures/mutation-gate-undefended/registry-load-fatal-exit.json",
|
|
192
|
-
"sha256": "ba5c79298f3f77b6a82c78b6a8da269a98b50aa811ab785ca4a588e1262ded82"
|
|
193
|
-
},
|
|
194
|
-
{
|
|
195
|
-
"path": "test/fixtures/mutation-gate-undefended/registry-load-fatal-nullcount.json",
|
|
196
|
-
"sha256": "2bc7bfa3dc56ae6cf0f7986ecccbbbcddbce128c018fbbf1ff40f5a061758da6"
|
|
197
|
-
},
|
|
198
|
-
{
|
|
199
|
-
"path": "test/fixtures/mutation-gate-undefended/registry-load-fatal-throw.json",
|
|
200
|
-
"sha256": "fb448430a632dbf4d751947363e862391fb869d5c65d1245c8ddc817c0844649"
|
|
201
|
-
},
|
|
202
|
-
{
|
|
203
|
-
"path": "test/fixtures/mutation-gate-undefended/registry-overbroad.json",
|
|
204
|
-
"sha256": "89c445656718c9ad6e573bf728b06d688a85b15a1e73a93cbd4e1579e33a54d9"
|
|
205
|
-
},
|
|
206
|
-
{
|
|
207
|
-
"path": "test/fixtures/mutation-gate-undefended/registry-r6-env-inapplicable.json",
|
|
208
|
-
"sha256": "626c3272dfc27ec87da5f60004611940b224d14c7acbc29466b65e6eab268ab3"
|
|
209
|
-
},
|
|
210
|
-
{
|
|
211
|
-
"path": "test/fixtures/mutation-gate-undefended/registry-r6-flaky-load.json",
|
|
212
|
-
"sha256": "cbec89506f2696c09cf5c4c3a987d6921fb8b4cacb131de04624fd47f2eef507"
|
|
213
|
-
},
|
|
214
|
-
{
|
|
215
|
-
"path": "test/fixtures/mutation-gate-undefended/registry-r6-tla.json",
|
|
216
|
-
"sha256": "353c1b84ad521c04764652464c3ef60c1bf54ffa161006108d1017d57b942dbe"
|
|
217
|
-
},
|
|
218
|
-
{
|
|
219
|
-
"path": "test/fixtures/mutation-gate-undefended/registry-syntax-break.json",
|
|
220
|
-
"sha256": "486d313922800edb75520cb2a79a83ce44ea5a7b12050286522ea979df150933"
|
|
221
|
-
},
|
|
222
|
-
{
|
|
223
|
-
"path": "test/fixtures/mutation-gate-undefended/registry-undefended.json",
|
|
224
|
-
"sha256": "9aef7b82a305d1ce17ce546c73ecb94ff0e8fb5f6006d450565fcd98cb5f895c"
|
|
225
|
-
},
|
|
226
|
-
{
|
|
227
|
-
"path": "test/fixtures/mutation-gate-undefended/test/env-guard.test.js",
|
|
228
|
-
"sha256": "406c387bc6fbe01fa1d4cd2a3754cbb22abcea6380c1471e9eff21ddc8d35424"
|
|
229
|
-
},
|
|
230
|
-
{
|
|
231
|
-
"path": "test/fixtures/mutation-gate-undefended/test/flaky-load.test.js",
|
|
232
|
-
"sha256": "7a9555312097c98cb5fccd749cb61ea216a2a3bf2845db5413153eed4b9c8251"
|
|
233
|
-
},
|
|
234
|
-
{
|
|
235
|
-
"path": "test/fixtures/mutation-gate-undefended/test/guard.test.js",
|
|
236
|
-
"sha256": "d8e0a34fc79f40c7f89b1987793a8e09570f2a92e9c0937dd9ac1bf4a3cfbcb7"
|
|
237
|
-
},
|
|
238
|
-
{
|
|
239
|
-
"path": "test/fixtures/mutation-gate-undefended/test/tla-mod.test.mjs",
|
|
240
|
-
"sha256": "860e54c8bf9c86e4c09853bb862379539d360b32ea6c4b93a69659ed4dc8fe9e"
|
|
241
|
-
},
|
|
242
|
-
{
|
|
243
|
-
"path": "test/guard-change-fact.test.ts",
|
|
244
|
-
"sha256": "694b79712dc8902fd9046426c35d21052dbeff417fffb70939f88b31449c6e9a"
|
|
245
|
-
},
|
|
246
|
-
{
|
|
247
|
-
"path": "test/guard-promote-cli.test.ts",
|
|
248
|
-
"sha256": "f8e35085106a98be239104394539c3aec350123eed4a115abf14acc2cb6b5bb9"
|
|
249
|
-
},
|
|
250
|
-
{
|
|
251
|
-
"path": "test/install-layouts.test.ts",
|
|
252
|
-
"sha256": "43cc6e3251500cd547997ac0916c250c8558f6c3d5c4a60254753e1e80ba24f5"
|
|
253
|
-
},
|
|
254
|
-
{
|
|
255
|
-
"path": "test/install-sync-partial.test.ts",
|
|
256
|
-
"sha256": "35824489662dbe9315d78cd20ecf968d416fbe80685d74b6588c8521a08497ea"
|
|
257
|
-
},
|
|
258
|
-
{
|
|
259
|
-
"path": "test/list-partial.test.ts",
|
|
260
|
-
"sha256": "fd98385a9b1021cf8341d154abcdf4506a84aaadddd465fcc7e057ba1927fe64"
|
|
261
|
-
},
|
|
262
|
-
{
|
|
263
|
-
"path": "test/mutation-gate-cli.test.ts",
|
|
264
|
-
"sha256": "3b33c786713e2dfaa192ea32df8cdcf534170c59d58ce285872a3fde008afbc4"
|
|
265
|
-
},
|
|
266
|
-
{
|
|
267
|
-
"path": "test/mutation-registry.json",
|
|
268
|
-
"sha256": "3e6f9bb105154121988da41568ff85573099235857ba25e76c4264c166b414ae"
|
|
269
|
-
},
|
|
270
|
-
{
|
|
271
|
-
"path": "test/packaged-trust-root.test.ts",
|
|
272
|
-
"sha256": "46c0af5494ad717eb4d936489f4bde2199b40cd756ab6c8adb0cd1714a971304"
|
|
273
|
-
},
|
|
274
|
-
{
|
|
275
|
-
"path": "test/parallel-worktree-smoke.test.ts",
|
|
276
|
-
"sha256": "0522b12ccdf3db79215c4c42162ef970f4cba0c0af96208426ca0323c367d0ee"
|
|
277
|
-
},
|
|
278
|
-
{
|
|
279
|
-
"path": "test/plan-completeness-gate.test.ts",
|
|
280
|
-
"sha256": "fafa2d1ff56bd41a6496b7ce569be671f2f617deac07425f47ad6e87b3ec00ce"
|
|
281
|
-
},
|
|
282
|
-
{
|
|
283
|
-
"path": "test/qe-bridge-cli.test.ts",
|
|
284
|
-
"sha256": "336ba7657c55f5b958a0ebed5617f3bc3b1956017b9389bbe7c38137889f8f1b"
|
|
285
|
-
},
|
|
286
|
-
{
|
|
287
|
-
"path": "test/qe-bridge-manifest-drift.test.ts",
|
|
288
|
-
"sha256": "b7b4d9e0c1dcee32e972aab97273b04bdde9634433e7c22345793a677dfff300"
|
|
289
|
-
},
|
|
290
|
-
{
|
|
291
|
-
"path": "test/roam-nested-archive.test.ts",
|
|
292
|
-
"sha256": "0c078b6e03cc749a64e0ac327885de1eea3c13e940c8e3f231174ab84076d44c"
|
|
293
|
-
},
|
|
294
|
-
{
|
|
295
|
-
"path": "test/skills-verify-static-advisories.test.ts",
|
|
296
|
-
"sha256": "b1140c20ec04d1c8ae67f97a42dbcece1e8e63c98a5de2c087f0359d27c25f17"
|
|
297
|
-
},
|
|
298
|
-
{
|
|
299
|
-
"path": "test/statusline-panel.test.ts",
|
|
300
|
-
"sha256": "b09b42c4ece1a83e5d3f3765629b0756a8f30a7122f3fc30363f93f092a44c0d"
|
|
301
|
-
},
|
|
302
|
-
{
|
|
303
|
-
"path": "test/target-alias-cli.test.ts",
|
|
304
|
-
"sha256": "96df42acb1cc5ada5ca97912d3b7da5b486067e851b9dd395855b1b540ce738c"
|
|
305
|
-
},
|
|
306
|
-
{
|
|
307
|
-
"path": "test/trace-bundle-cli.test.ts",
|
|
308
|
-
"sha256": "fdaad63359ca7ce351e505e613b547bbc653e0847403edfae88d22a8a524b7a0"
|
|
309
|
-
},
|
|
310
|
-
{
|
|
311
|
-
"path": "test/version-flag.test.ts",
|
|
312
|
-
"sha256": "7acd80deb073fb2987c6d14a028a64c6d44324ac61a05410b7d4b6c87ff5acc6"
|
|
313
|
-
},
|
|
314
|
-
{
|
|
315
|
-
"path": "test/workflow-init-lint-clean.test.ts",
|
|
316
|
-
"sha256": "b7a64462983901adca86ecc29e76b3f95885210e5aaba68352356191e6bfac7f"
|
|
317
|
-
},
|
|
318
|
-
{
|
|
319
|
-
"path": "test/workflow-legacy-shim.test.ts",
|
|
320
|
-
"sha256": "47d35ec36aa4793ee5d61debf1d345e7d236ad21db27f052aa3e7add03852205"
|
|
321
|
-
},
|
|
322
|
-
{
|
|
323
|
-
"path": "test/workflow-run-cli.test.ts",
|
|
324
|
-
"sha256": "ac0468d8e97795602e8b8298f278356a273309674483854cd136b99ddf6e39d4"
|
|
325
|
-
},
|
|
326
|
-
{
|
|
327
|
-
"path": "test/workflow-run-r2.test.ts",
|
|
328
|
-
"sha256": "d7f308ac9538b7e9d7dc8dcd0ce7cf8127f26b5aea1f44e9d44ac1500ad733fb"
|
|
329
|
-
},
|
|
330
|
-
{
|
|
331
|
-
"path": "test/workflow-run-read-plane.test.ts",
|
|
332
|
-
"sha256": "c56111e578500d690190f9fdb4ec44182a892c7a6c2c289896509c1229d7b06d"
|
|
333
|
-
},
|
|
334
|
-
{
|
|
335
|
-
"path": "test/workflow-trace-attestation-cli.test.ts",
|
|
336
|
-
"sha256": "dad2efd147d9186b29989ef36f6e62614c4ded983d7894a7c1f9b1628e621871"
|
|
337
|
-
},
|
|
338
|
-
{
|
|
339
|
-
"path": "test/workflow-trace-cli-surface.test.ts",
|
|
340
|
-
"sha256": "28df4b51fff1dc80bb38671d56f548d859949d7a9e2f00e7045e732efc7c2e3d"
|
|
341
|
-
},
|
|
342
|
-
{
|
|
343
|
-
"path": "tsconfig.json",
|
|
344
|
-
"sha256": "e80ef2911c3347a713dc3dca6a5f6034d91e938e58e71345ea920dd9833bcdbb"
|
|
345
|
-
},
|
|
346
|
-
{
|
|
347
|
-
"path": "vitest.config.ts",
|
|
348
|
-
"sha256": "a6ffc6172b50a3a59010f8f8c66e2204e7d298b62a7f2bc5de33cbf39c99899d"
|
|
349
105
|
}
|
|
350
106
|
]
|
|
351
107
|
},
|
|
352
|
-
"signature": "
|
|
108
|
+
"signature": "6slAUaHVCFomW71+HoDnzbfXrn7eVpZJO/7YI3eqt3cZN1KwhrUZ6gzZC0KVtbNuqZytp+Z+wgS2pTjFVbASAA=="
|
|
353
109
|
}
|
package/README.md
CHANGED
|
@@ -3299,7 +3299,7 @@ invariants: HARD rules **block** the operation, SOFT rules warn. Zero config nee
|
|
|
3299
3299
|
cover the known rakes; `.dz/guard.json` (via `dz guard --init`) exists only if you want to tune a severity
|
|
3300
3300
|
or disable a rule.
|
|
3301
3301
|
```bash
|
|
3302
|
-
dz guard check --op publish # no-workspace-star · no-skill-drift · no-secrets · readme-consistency · readme-first · skills-registrable · lockfile-in-sync · no-stubs · licence-hold
|
|
3302
|
+
dz guard check --op publish # no-workspace-star · no-skill-drift · no-secrets · readme-consistency · readme-first · skills-registrable · lockfile-in-sync · no-stubs · review-round · licence-hold
|
|
3303
3303
|
dz guard check --op teach --text "the fix: export sk-abc..." # → BLOCK (exit 1): looks like a credential
|
|
3304
3304
|
dz guard log # append-only audit: every verdict + every forced override
|
|
3305
3305
|
```
|
|
@@ -3334,6 +3334,27 @@ zero specifiers, and then report every real dependency as "not recorded". The ru
|
|
|
3334
3334
|
`.dz/guard.json` cannot promote it to HARD, since a parser designed to admit "I may not understand this
|
|
3335
3335
|
file" must never be able to block a publish.
|
|
3336
3336
|
|
|
3337
|
+
**`review-round` (HARD, publish)** — a package that bumps its version AND changes source must bring a
|
|
3338
|
+
GRADED `features/*/08_qe_report.md` in the same change. The gate had eleven rules and not one asked
|
|
3339
|
+
whether anyone but the author had read the code; the cost is on the record (health-advisor slice H:
|
|
3340
|
+
five rounds graded F, thirteen packages published on the author's own verification, and round six
|
|
3341
|
+
found six defects in already-published code).
|
|
3342
|
+
|
|
3343
|
+
Scoped to SOURCE on purpose: a HARD rule that also blocked a docs-only republish is a rule someone
|
|
3344
|
+
switches off. The floor defaults to PRESENCE of a grade — `.dz/guard.json` → `reviewRound.minGrade`
|
|
3345
|
+
sets a letter when you want one.
|
|
3346
|
+
|
|
3347
|
+
It proves a graded report EXISTS in this change. It does **not** prove the review was independent,
|
|
3348
|
+
was competent, covered THIS package, or was taken against this revision — the violation text says all
|
|
3349
|
+
four. And like every change-scoped rule here it reads the WORKING TREE, so it is silent once the
|
|
3350
|
+
change is committed.
|
|
3351
|
+
|
|
3352
|
+
```
|
|
3353
|
+
[BLOCK] review-round: @dzhechkov/memory: source changed and the version is bumped, but this change
|
|
3354
|
+
brings no GRADED features/*/08_qe_report.md — a publish gate that cannot tell "reviewed" from
|
|
3355
|
+
"not reviewed" treats them alike.
|
|
3356
|
+
```
|
|
3357
|
+
|
|
3337
3358
|
**`licence-hold` (HARD, publish)** — the machine side of a licence precondition (ADR-001 of feature
|
|
3338
3359
|
`hermes-claude-adaptation`, first holder: `@dzhechkov/cloudru-hub`). A pack that declares
|
|
3339
3360
|
`package.json.licenseHold` is parked behind two belts: while it stays `private:true` the npm layer
|
|
@@ -3744,12 +3765,19 @@ dz setup --target claude-code --memory agentdb # enables the vector tier (agen
|
|
|
3744
3765
|
dz teach "Used DataLoader to batch DB round-trips" --reward 0.9 --domain performance
|
|
3745
3766
|
# ↳ mirrored to vector tier (agentdb) # best-effort, AFTER the lexical write
|
|
3746
3767
|
dz recall "fix N+1 queries" # hybrid: FTS5 + vector (RRF-merged), ⟨both⟩/⟨vector⟩ labels
|
|
3747
|
-
dz recall "fix N+1 queries" --semantic # weight the vector leg 2×; exit 1 if no engine (explicit ask)
|
|
3768
|
+
dz recall "fix N+1 queries" --semantic # weight the vector leg 2×; exit 1 if no engine OR nothing ranked (explicit ask)
|
|
3748
3769
|
dz recall "fix N+1 queries" --no-semantic # force today's pure-lexical ranking
|
|
3749
|
-
dz vector status # engine,
|
|
3770
|
+
dz vector status # engine, writer state, mirrored / pending / not-in-the-mirror
|
|
3771
|
+
dz recall "fix N+1 queries" --json # every hit carries `relevance` — the RRF score it ranked by
|
|
3750
3772
|
dz consolidate # also BACKFILLS the mirror (heals failed/queued mirrors)
|
|
3751
3773
|
```
|
|
3752
3774
|
|
|
3775
|
+
- **The TOP lexical match is never displaced by `--semantic`.** It keeps a reserved seat, so a rare identifier, a file name or an error code still surfaces when you weight the vector leg (MEASURED on a live store: survival 2 of 5 → 5 of 5). The seat is taken only under `--semantic`, and never from a hit BOTH legs found. Ties break by evidence — a hit both legs found outranks one only a single leg found.
|
|
3776
|
+
- **Every claim the output makes follows what the run did.** The header says `+ vector (…)` only when a vector actually ranked something; with an empty tier it says `FTS5 only (semantic tier empty — run: dz vector reindex)` instead of promising a ranking that did not happen, and the `dz setup --memory agentdb` hint no longer fires at a tier that is already installed.
|
|
3777
|
+
- **`dz vector status` counts like with like.** `Mirrored vectors (learned patterns)` covers exactly the scope the lexical count covers; vectors of other dz-owned task types (backlog ideas) are reported on their own line, and a true orphan — a pattern vector whose record is gone — is named for the first time. The old single number counted three task types while sitting under a one-task-type lexical count: on this repository it read 547 against 274, which looks like half the index orphaned, and 273 of those were backlog ideas with ZERO real orphans.
|
|
3778
|
+
- **`dz vector status` distinguishes three states, not two:** `Mirror writer: ON/OFF` (whether teach is queueing at all) and `Not in the mirror: N` — mirrorable patterns in neither the mirror nor the pending queue, counted as a SET DIFFERENCE over ids. `Pending mirror queue: 0` no longer stands alone for "no debt": it used to read the same whether the queue was empty or had never been opened.
|
|
3779
|
+
- **`dz teach --from-json` says so when the mirror writer is off** — carrying a brain to a new machine used to land a fully unindexed store that reported zero debt.
|
|
3780
|
+
|
|
3753
3781
|
- **Optional by design:** no engine installed ⇒ `teach`/`recall`/`consolidate` behave byte-identically to the pre-vector versions; every engine call is time-bounded and failures degrade to lexical with one honest ℹ line.
|
|
3754
3782
|
- **The lexical store stays the source of truth** — vector hits are pointers; a pattern pruned from the store can never "resurrect" via the mirror.
|
|
3755
3783
|
- **Two portable forms:** `dz recall --all --json` = the SHARING form (patterns themselves, re-import with `dz teach --from-json`); `dz vector export <path>` = the VECTOR form (a portable `.rvf` checkpoint, opt-in `@ruvector/rvf` engine via `.dz/config.json` → `memory.vector.engine: "rvf"`).
|
|
@@ -4023,6 +4051,16 @@ npx @dzhechkov/p-replicator init
|
|
|
4023
4051
|
|
|
4024
4052
|
## Status
|
|
4025
4053
|
|
|
4054
|
+
`v0.7.0` — `dz recall` and `dz vector status` now say what the RUN did rather than what the config
|
|
4055
|
+
allows. **One breaking change for scripts:** `dz recall --semantic` exits **1** when no vector could
|
|
4056
|
+
serve it — the code the README already documented for the sibling "no engine" case, now applied on
|
|
4057
|
+
every return path including `--json`, which used to report success. Also: the top lexical match keeps
|
|
4058
|
+
its place under `--semantic`; `--json` carries a `relevance` field and parses whole even while the
|
|
4059
|
+
embedder loads; the header names the empty-tier state instead of promising a ranking that did not
|
|
4060
|
+
happen; `dz vector status` counts like with like and distinguishes "not queued" from "queued and
|
|
4061
|
+
failed"; and a `--books` search that finds nothing says where it looked and, when the machine-wide
|
|
4062
|
+
brain holds sources, names the command that searches them.
|
|
4063
|
+
|
|
4026
4064
|
`v0.6.1` — two commands that move checks off the model's judgement and onto the disk.
|
|
4027
4065
|
`dz amendment-check` resolves every `AM-N` amendment row to a test found INSIDE the file the row names
|
|
4028
4066
|
(the plan is authoritative; an amendment it drops or rewords under the same id is a failure; `--all` is
|
package/dist/cli.d.ts
CHANGED
|
@@ -52,6 +52,15 @@ export type ReleaseExecRunner = (cmd: string, opts: {
|
|
|
52
52
|
stderr: string;
|
|
53
53
|
timedOut?: boolean;
|
|
54
54
|
};
|
|
55
|
+
/**
|
|
56
|
+
* Run `fn` with anything written to STDOUT by code we do not own routed to STDERR instead.
|
|
57
|
+
*
|
|
58
|
+
* Used to keep `--json` output parseable: a dependency that greets stdout on first load (currently
|
|
59
|
+
* transformers.js) would otherwise sit in front of the JSON array. Nothing is swallowed — the text
|
|
60
|
+
* still reaches the terminal, on the stream diagnostics belong on. Restoration is in `finally`, so a
|
|
61
|
+
* throwing `fn` cannot leave stdout redirected.
|
|
62
|
+
*/
|
|
63
|
+
export declare function withForeignStdoutOnStderr<T>(fn: () => Promise<T>): Promise<T>;
|
|
55
64
|
export interface CodexHooksSyncInput {
|
|
56
65
|
readonly codexHome?: string | undefined;
|
|
57
66
|
readonly project?: string | undefined;
|
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;AAKH,OAAO,EAA0B,KAAK,EAAE,KAAK,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAKtF,OAAO,
|
|
1
|
+
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|