@dzhechkov/harness-core 0.8.44 → 0.8.46

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 (47) hide show
  1. package/.dz-manifest.json +76 -36
  2. package/README.md +54 -6
  3. package/dist/apply-leg.d.ts +1 -1
  4. package/dist/apply-leg.d.ts.map +1 -1
  5. package/dist/apply-leg.js +22 -7
  6. package/dist/apply-leg.js.map +1 -1
  7. package/dist/index.d.ts +3 -0
  8. package/dist/index.d.ts.map +1 -1
  9. package/dist/index.js +4 -0
  10. package/dist/index.js.map +1 -1
  11. package/dist/lesson-payoff.d.ts.map +1 -1
  12. package/dist/lesson-payoff.js +3 -1
  13. package/dist/lesson-payoff.js.map +1 -1
  14. package/dist/pack-inventory.d.ts +13 -0
  15. package/dist/pack-inventory.d.ts.map +1 -1
  16. package/dist/pack-inventory.js +22 -1
  17. package/dist/pack-inventory.js.map +1 -1
  18. package/dist/round-exec-claim.d.ts +36 -0
  19. package/dist/round-exec-claim.d.ts.map +1 -0
  20. package/dist/round-exec-claim.js +17 -0
  21. package/dist/round-exec-claim.js.map +1 -0
  22. package/dist/session-retro.d.ts +33 -0
  23. package/dist/session-retro.d.ts.map +1 -1
  24. package/dist/session-retro.js +170 -34
  25. package/dist/session-retro.js.map +1 -1
  26. package/dist/setup.d.ts.map +1 -1
  27. package/dist/setup.js +3 -2
  28. package/dist/setup.js.map +1 -1
  29. package/dist/sign.d.ts +44 -0
  30. package/dist/sign.d.ts.map +1 -1
  31. package/dist/sign.js +126 -1
  32. package/dist/sign.js.map +1 -1
  33. package/dist/stamped-path.d.ts +15 -0
  34. package/dist/stamped-path.d.ts.map +1 -0
  35. package/dist/stamped-path.js +32 -0
  36. package/dist/stamped-path.js.map +1 -0
  37. package/package.json +2 -2
  38. package/sbom.json +135 -35
  39. package/src/apply-leg.ts +22 -7
  40. package/src/index.ts +5 -0
  41. package/src/lesson-payoff.ts +3 -1
  42. package/src/pack-inventory.ts +21 -1
  43. package/src/round-exec-claim.ts +43 -0
  44. package/src/session-retro.ts +153 -31
  45. package/src/setup.ts +3 -2
  46. package/src/sign.ts +136 -1
  47. package/src/stamped-path.ts +41 -0
package/.dz-manifest.json CHANGED
@@ -9,7 +9,7 @@
9
9
  },
10
10
  {
11
11
  "path": "README.md",
12
- "sha256": "f80660a868b436e0ae7b3a23d5b104a8e882bf9f9fc7bfc22f7c0023ec76f2d6"
12
+ "sha256": "9f7d650284101fe8b3bd2f4a9dd0de795bd5a0baedfa98b36fbfbc77ccd296d1"
13
13
  },
14
14
  {
15
15
  "path": "dist/__tests__/golden-baseline.test.d.ts",
@@ -125,19 +125,19 @@
125
125
  },
126
126
  {
127
127
  "path": "dist/apply-leg.d.ts",
128
- "sha256": "5ee09fa3e1ac4271b420a93d0972b3dd3844ced3757c60dcb1da95015f68554a"
128
+ "sha256": "bb74bc4c0bc8ef6b41bd6ad0c8fb51c8da5b3fe228170374f0f85aa3ebdc5004"
129
129
  },
130
130
  {
131
131
  "path": "dist/apply-leg.d.ts.map",
132
- "sha256": "126a8beddf9f7bf8a8056dc67d63d3c335fc89c993bb0478ac30a4ddd5c8e21e"
132
+ "sha256": "df06c273af29833e2c7f5ff7d0f7abd31f130155d912b41a3890b185a619bc61"
133
133
  },
134
134
  {
135
135
  "path": "dist/apply-leg.js",
136
- "sha256": "1095a9a8b66ba60e64123e28eb47873079e015c82b61d211acf02b394fe6006b"
136
+ "sha256": "1480a03f6202aeb1b8ed6caa26d129159c46108b60d5e76cc2946252f1093098"
137
137
  },
138
138
  {
139
139
  "path": "dist/apply-leg.js.map",
140
- "sha256": "10cdd827f805919af93aefc4876da422b84fbb3a30a686627b74a908a9332410"
140
+ "sha256": "942d14725e1aec75af18822d65378a2d02d3601383b6a4d887bf8642b366f7d9"
141
141
  },
142
142
  {
143
143
  "path": "dist/apply.d.ts",
@@ -1165,19 +1165,19 @@
1165
1165
  },
1166
1166
  {
1167
1167
  "path": "dist/index.d.ts",
1168
- "sha256": "c18f5b65c615b023a3c3f576b2619692bf9a2862f44ba8acb06b5a4e025077e0"
1168
+ "sha256": "c4ceaf00e0ded6d5e802b8867871bd8bbf25029a6a93895f4086313d5b2175c2"
1169
1169
  },
1170
1170
  {
1171
1171
  "path": "dist/index.d.ts.map",
1172
- "sha256": "ddd45dd0f6cdd8c83fe98a3a78ccfb85da04b2c9df1e52973a65f2526900d418"
1172
+ "sha256": "911eee2810a4dbb9f28e6bff26a274d198cff03a2d3e28b47753f300014419e6"
1173
1173
  },
1174
1174
  {
1175
1175
  "path": "dist/index.js",
1176
- "sha256": "1ff621602e84ea254c7c865fd8420ced42570345c8e099ee098e5d25f5c5a9db"
1176
+ "sha256": "2c48457eb75559dd7f9ef76c82a67b09bacde134511ba2f537920f39a29299d2"
1177
1177
  },
1178
1178
  {
1179
1179
  "path": "dist/index.js.map",
1180
- "sha256": "a7879e54955ef542d3cda7884d3eac9a362f3f2c2b1dbc8d03f190e479df47c3"
1180
+ "sha256": "d9179260cecee61509eb746b4ac88ed9e6e8947197db4b52c1773ffa9d41564a"
1181
1181
  },
1182
1182
  {
1183
1183
  "path": "dist/integration-apply.d.ts",
@@ -1361,15 +1361,15 @@
1361
1361
  },
1362
1362
  {
1363
1363
  "path": "dist/lesson-payoff.d.ts.map",
1364
- "sha256": "b4a01fd697d785c473d9b66689c8d140211fc09f8379ca7fa32e41fbd36ca940"
1364
+ "sha256": "e8dcc3bd0e0b7dca766b9ed8e77c3b33d349349b809ee625890f327aa62ebc77"
1365
1365
  },
1366
1366
  {
1367
1367
  "path": "dist/lesson-payoff.js",
1368
- "sha256": "87ad202b5bb3e1f6295d18a997201c1d2303343b42953843d852d2b83f9451e8"
1368
+ "sha256": "d1ab2c60cc400cf9be5e2d6352eae67d9a3142808fd741ca6103a83b35afb655"
1369
1369
  },
1370
1370
  {
1371
1371
  "path": "dist/lesson-payoff.js.map",
1372
- "sha256": "b7ef829dc678254bacf001e1ffe968b1619cb0000179362d159d46362a451b8d"
1372
+ "sha256": "dd03c47fb197c268f28a39bd65ce0c571ae7ffb546edef88d1dc460654f174cc"
1373
1373
  },
1374
1374
  {
1375
1375
  "path": "dist/loop-blobs.generated.d.ts",
@@ -1677,19 +1677,19 @@
1677
1677
  },
1678
1678
  {
1679
1679
  "path": "dist/pack-inventory.d.ts",
1680
- "sha256": "02ca8a9c3e379fd9f53f534f69fc4f64ee55db3fda0b4ea9689f060ccbf438b8"
1680
+ "sha256": "7dbbcb06f5b075cb2bf7d1eec8d1c3fe3312a39bfcaaf26ff8ae7daa4943c4fb"
1681
1681
  },
1682
1682
  {
1683
1683
  "path": "dist/pack-inventory.d.ts.map",
1684
- "sha256": "be6e65fe1cb9f2af632fe0f30cfb06ebcce873c06a794cea8df6a549f206e182"
1684
+ "sha256": "f952a2cc0939988c7c388de4c8e206932cb92641c02e4666ec226e3123d5b9c1"
1685
1685
  },
1686
1686
  {
1687
1687
  "path": "dist/pack-inventory.js",
1688
- "sha256": "dc633ef207f8cbd90f1d9961bb8696c5cf63072ead09dd48929923ccfe3f0184"
1688
+ "sha256": "c19eb4375e6d42f4f732bcffc2925735c3c6a7270fe1cca4c5dc1075e7311de2"
1689
1689
  },
1690
1690
  {
1691
1691
  "path": "dist/pack-inventory.js.map",
1692
- "sha256": "f0e121375dd12272ed7c9c5f61dc2d6df7fb19b9e6756de19820dbc460f86204"
1692
+ "sha256": "1fb4a012594e28a604f2240ea091dc3b6a0b5f705ed485f0e36f6be8c196d856"
1693
1693
  },
1694
1694
  {
1695
1695
  "path": "dist/package-skill-layouts.d.ts",
@@ -2267,6 +2267,22 @@
2267
2267
  "path": "dist/risk-scoring.js.map",
2268
2268
  "sha256": "d1eccc50990b6ea8ec270c2112162aa6f43ccaa0d22fc6d5e70079ea53c209e4"
2269
2269
  },
2270
+ {
2271
+ "path": "dist/round-exec-claim.d.ts",
2272
+ "sha256": "5a2b0cb0f7f6e63afd415313f196c83b58ba235b84c0abe38e5bb0077a24e2ab"
2273
+ },
2274
+ {
2275
+ "path": "dist/round-exec-claim.d.ts.map",
2276
+ "sha256": "96f400965d180c6f388ffa9e47bf1836f6081bcb6f5c26188e15e067eb1960be"
2277
+ },
2278
+ {
2279
+ "path": "dist/round-exec-claim.js",
2280
+ "sha256": "c71a6d227665151d7ab3de4be94174b63cb4589b0029759ea324a77de8f6d022"
2281
+ },
2282
+ {
2283
+ "path": "dist/round-exec-claim.js.map",
2284
+ "sha256": "1c57b9f563db38679572d1ddbc9aa33a25f6100e975ddc683c35f87ccfc094cd"
2285
+ },
2270
2286
  {
2271
2287
  "path": "dist/round-exec.d.ts",
2272
2288
  "sha256": "3a7860e320ed7a2bf37b142f7aa37bcaec5302c563dc7b1ce2e75f6d4f9cc350"
@@ -2413,19 +2429,19 @@
2413
2429
  },
2414
2430
  {
2415
2431
  "path": "dist/session-retro.d.ts",
2416
- "sha256": "ae652668bcff0fd5846e63fda6f1ffb38155459e1ad563d549ab72f4f1f5d32d"
2432
+ "sha256": "48a74602b20dd51467ab48a09886e876bee6821dfa89255d0100e5147595d744"
2417
2433
  },
2418
2434
  {
2419
2435
  "path": "dist/session-retro.d.ts.map",
2420
- "sha256": "6119e91d2af673e5583e0f6ad117af62fd92799f6d8f671332e134f978f7ffe0"
2436
+ "sha256": "d2f2685f09be7823be59ffdb3bb24efef865a62987a638c029f4c3452f061a09"
2421
2437
  },
2422
2438
  {
2423
2439
  "path": "dist/session-retro.js",
2424
- "sha256": "878a9dd6db7d369edaf7acb1ae6e00dd994ece247e6123980cd4dba0d7c54949"
2440
+ "sha256": "5d869d3a224d52964b296d9224933f6ecb2f4edf573a946888d9166f1489ce92"
2425
2441
  },
2426
2442
  {
2427
2443
  "path": "dist/session-retro.js.map",
2428
- "sha256": "6eb19cab2cac968a063a7615e7fccb2a9ca4ac1b3fcf16bfd0f4c0c1506f1f5e"
2444
+ "sha256": "f4744745a940e18d9591cbfcafc81cbc029c31e0c450918a4957fbdc87ba2070"
2429
2445
  },
2430
2446
  {
2431
2447
  "path": "dist/setup.d.ts",
@@ -2433,15 +2449,15 @@
2433
2449
  },
2434
2450
  {
2435
2451
  "path": "dist/setup.d.ts.map",
2436
- "sha256": "3b8f5dc584a26b53be9f1e68cb8fffaaf68decbe1cf4b634f78c8ec0f3725b3d"
2452
+ "sha256": "3ecf9110097001cba535095de5a78cd9ca2703cfed15d921f368673b08ef6374"
2437
2453
  },
2438
2454
  {
2439
2455
  "path": "dist/setup.js",
2440
- "sha256": "8644f836c6236867d8f238cf48465506361647f11bc58b50134a7a862b7e711a"
2456
+ "sha256": "ffab1105dd844f20d5f8a6c385901f9bb6c714148a2f61a4e51afab0254021b2"
2441
2457
  },
2442
2458
  {
2443
2459
  "path": "dist/setup.js.map",
2444
- "sha256": "3bafd2f8eb1c3305be28c42d59365dc58751d199b5e702b69c581c5df7b97560"
2460
+ "sha256": "363fa3f4e716a6e450a49f9f11b9c871baad68b30c825f3cdd4b27f471731572"
2445
2461
  },
2446
2462
  {
2447
2463
  "path": "dist/shell-veto-policy.d.ts",
@@ -2461,19 +2477,19 @@
2461
2477
  },
2462
2478
  {
2463
2479
  "path": "dist/sign.d.ts",
2464
- "sha256": "22608f3928716385fdb0cb53c7d64ef585ed4326060352af4f849a1d1621c66e"
2480
+ "sha256": "8f63cf60067ec33ec3bdd86be8ea860ae6db442edd32fcabdba2a9f9c876a21d"
2465
2481
  },
2466
2482
  {
2467
2483
  "path": "dist/sign.d.ts.map",
2468
- "sha256": "565f680d49303935f12cf2b4bcb9c465320d259ac38cada8e5256b45b4bf8119"
2484
+ "sha256": "375655033485f9b4cbdaca4c371581cfaa3a0b757d9d0d4309d75ecbc1c9a5e3"
2469
2485
  },
2470
2486
  {
2471
2487
  "path": "dist/sign.js",
2472
- "sha256": "b6712fc5a3e867a22c740ad05f782dba4c84267e0b74e3dd0bf796dd623e32e5"
2488
+ "sha256": "0938e8399eb90c45520d1a544d3f7e741a9569f7e42d6cd36e2569f831f010d7"
2473
2489
  },
2474
2490
  {
2475
2491
  "path": "dist/sign.js.map",
2476
- "sha256": "059760d62fa63c6f45e47a31d17f3bedd926ef2076c7ac1a7f7e687021cf7f13"
2492
+ "sha256": "bfc1acdb5b4b3dec2f6fe4eb2fe27e4133c574f693d3a34a1ae2f7cc26730262"
2477
2493
  },
2478
2494
  {
2479
2495
  "path": "dist/skill-drift.d.ts",
@@ -2619,6 +2635,22 @@
2619
2635
  "path": "dist/stage-line.js.map",
2620
2636
  "sha256": "4ab40298038921cb7b3412bc3af127c3c0de1a04197a7fbba0e250d4021808d5"
2621
2637
  },
2638
+ {
2639
+ "path": "dist/stamped-path.d.ts",
2640
+ "sha256": "2bab16b2083b6771343aaf6e674661cd8b7e00851933caa7abb0b5129757851f"
2641
+ },
2642
+ {
2643
+ "path": "dist/stamped-path.d.ts.map",
2644
+ "sha256": "0cae7683e286b6028c3fa170386609ec8b84f4a2b71ad159f0285fc1402bd6a3"
2645
+ },
2646
+ {
2647
+ "path": "dist/stamped-path.js",
2648
+ "sha256": "95f90efd72d5068247b778cc2b740562b263ba3ae9bd8793811d9b58d02524c4"
2649
+ },
2650
+ {
2651
+ "path": "dist/stamped-path.js.map",
2652
+ "sha256": "862c33d8a76abc76ef47987b1ec499ef46d73af109205c1cb0be3aeb75fe6350"
2653
+ },
2622
2654
  {
2623
2655
  "path": "dist/statusline.d.ts",
2624
2656
  "sha256": "64241772af785efbc7ad356d9a94545a93629dc818d1b6cc74abf7fce1714292"
@@ -3069,7 +3101,7 @@
3069
3101
  },
3070
3102
  {
3071
3103
  "path": "package.json",
3072
- "sha256": "0b881348f6c4b203b10ec7331e8cb5e0a44f6b4fd661e9340cba4e60a7042edb"
3104
+ "sha256": "567d35d6959a019cb066d731a8b2c691c86b8a8853561af4b4af583b1a1391c6"
3073
3105
  },
3074
3106
  {
3075
3107
  "path": "src/__tests__/golden-baseline.test.ts",
@@ -3101,7 +3133,7 @@
3101
3133
  },
3102
3134
  {
3103
3135
  "path": "src/apply-leg.ts",
3104
- "sha256": "c130c9ce4f4829ee4c494a1863574d407cec61f63309dea0454a6ee2794476e6"
3136
+ "sha256": "ee116c44eb3d1793e369bb684f2ff020957f351f1c2de1351e736de45b5dcab5"
3105
3137
  },
3106
3138
  {
3107
3139
  "path": "src/apply.ts",
@@ -3365,7 +3397,7 @@
3365
3397
  },
3366
3398
  {
3367
3399
  "path": "src/index.ts",
3368
- "sha256": "ecbd56d2a04ff6a7fda5bff402bfd7f978db91a1b9559b33e5dfbe20da92390f"
3400
+ "sha256": "6708ea6071d81233d17a132024ecc34059e954c9bfb19af7222d2d839b200d39"
3369
3401
  },
3370
3402
  {
3371
3403
  "path": "src/integration-apply.ts",
@@ -3413,7 +3445,7 @@
3413
3445
  },
3414
3446
  {
3415
3447
  "path": "src/lesson-payoff.ts",
3416
- "sha256": "bec4f95a59f3f1bcdafaddcc10135581ff2828f6f0b4eac02559e77f339111dd"
3448
+ "sha256": "a3754701f00eba282d95ed944cdf0e88b2018bdd0713a305e220759f0f0b1202"
3417
3449
  },
3418
3450
  {
3419
3451
  "path": "src/loop-blobs.generated.ts",
@@ -3493,7 +3525,7 @@
3493
3525
  },
3494
3526
  {
3495
3527
  "path": "src/pack-inventory.ts",
3496
- "sha256": "27aad0694431ab6f7261f4f33a2b3c8500662d555c4d6c6f0700c4979dce23b5"
3528
+ "sha256": "c731312962d631f985414a44111ee51ec4afc56f1dabb3adc088fd43b55f2620"
3497
3529
  },
3498
3530
  {
3499
3531
  "path": "src/package-skill-layouts.ts",
@@ -3639,6 +3671,10 @@
3639
3671
  "path": "src/risk-scoring.ts",
3640
3672
  "sha256": "dcae3c879f114899b12ca57324e776e083f5753590763647690de1fdbd40198d"
3641
3673
  },
3674
+ {
3675
+ "path": "src/round-exec-claim.ts",
3676
+ "sha256": "349ed3905cc29230a0cb67a2c0c2c10948aebb6c8f5d3c9c3ad59ec1f862e23b"
3677
+ },
3642
3678
  {
3643
3679
  "path": "src/round-exec.ts",
3644
3680
  "sha256": "e530880f7e2e789e10adff66f536e6536cd0b74a62d117bf9ce1d547bea4fdb9"
@@ -3677,11 +3713,11 @@
3677
3713
  },
3678
3714
  {
3679
3715
  "path": "src/session-retro.ts",
3680
- "sha256": "191c5a88e35cb4d1e142cd1a60faa1f397c6a49b5e7d24690a5ea61d722c73de"
3716
+ "sha256": "9c27223147bed72c41c80723a87123662200b72700a05f44714aaaa1d7fa5dc5"
3681
3717
  },
3682
3718
  {
3683
3719
  "path": "src/setup.ts",
3684
- "sha256": "0f44ef0d05c0ffabffe5e0f4fb4539b67fd72f62b42206d68bc98199ea718dcd"
3720
+ "sha256": "9041565e0c4f79a66edd8fed57e5e75029d1bd0c9b276fc86cbd2718b2fec6d8"
3685
3721
  },
3686
3722
  {
3687
3723
  "path": "src/shell-veto-policy.ts",
@@ -3689,7 +3725,7 @@
3689
3725
  },
3690
3726
  {
3691
3727
  "path": "src/sign.ts",
3692
- "sha256": "02772313e7c6fd4e7f5d2354fd11eb4234baba7a64e9972d0b4136be9bd98ae6"
3728
+ "sha256": "c9b2ee366049793eb25e93cbcfce1037d8c24c19ddc24a3dc6e496ee8cac6fe9"
3693
3729
  },
3694
3730
  {
3695
3731
  "path": "src/skill-drift.ts",
@@ -3731,6 +3767,10 @@
3731
3767
  "path": "src/stage-line.ts",
3732
3768
  "sha256": "1212c0beec50baae909f9f5e95e7a3fbb4a4d1b173fbbe965547bd8a642975c1"
3733
3769
  },
3770
+ {
3771
+ "path": "src/stamped-path.ts",
3772
+ "sha256": "bfb3729e414745a2d40694a244baedc56c4c2eaa6f42287e77b968d211bc54ed"
3773
+ },
3734
3774
  {
3735
3775
  "path": "src/statusline.ts",
3736
3776
  "sha256": "3acddc58a69045a28b84cde5e64afa322cd0d572fe4aa471b0b101c8d897999a"
@@ -3845,5 +3885,5 @@
3845
3885
  }
3846
3886
  ]
3847
3887
  },
3848
- "signature": "gU1UF0rr5Sqh/2QemWHJ++TB0pIYy008GbUPy5VzEkUDHrYbczqLEX7eC/hLKdC2fjeityw2PLnTMfYs3dNNCg=="
3888
+ "signature": "MO0csv2Y7U71rcFjmkUZM5nZZqFTbfuo8K6kxhTLFrAC2UvGJdFMFc2Y+7s0KlsjLH3Up4evyRyN4vsUVlQLDg=="
3849
3889
  }
package/README.md CHANGED
@@ -69,6 +69,23 @@ The serial paths in `test/serial-suites.txt` are regenerated from
69
69
  `test/serial-suites-census.test.ts`, which scans test sources for process and timing markers,
70
70
  including `execSync(` and `execFile(`, and fails when the list and census differ.
71
71
 
72
+ The census reads markers from **comment-stripped code**: the test-side helper
73
+ `test/helpers/serial-census.ts` (`maskTsComments` / `maskReport` / `spawnMarkersIn`, shared with the
74
+ harness-cli twin by relative import; it needs the `typescript` devDependency, so it is NOT a `src/`
75
+ export) asks the TypeScript parser where the comments are and blanks them to same-length spaces,
76
+ keeping line terminators; string, template and regex contents stay verbatim (markers such as
77
+ `dist/bin.js` live in strings by design). FAIL-SAFE (AM-5): a file the parser cannot parse is
78
+ treated as all code (`parseOk:false`), so the only possible error is an unmasked comment that
79
+ over-serializes one suite — never a hidden spawn. `dist/bin.js` counts only when the same file also
80
+ holds an import STATEMENT of `child_process` at a line start (ESM `import … from` or
81
+ `const … = require(`; a fixture string that spells one is data) or of a test helper — a relative
82
+ import whose path carries a `helpers/` segment at any depth (`./helpers/x`, `../../helpers/x`,
83
+ `./util/helpers/x`; not `./helpersX/`, not a bare `helpers` package) — otherwise it is a fixture
84
+ path, i.e. data. MEASURED 2026-09-25 (backlog `ffe4e076`): the raw scan had listed 5 comment-only
85
+ suites in harness-cli and 2 data-only suites here as serial; two of the flipped files spawn through
86
+ a production helper and are now named by that helper's call (`spawnRoundCodex(`,
87
+ `defaultIntegrationProcessPort.run(`) instead of by a comment.
88
+
72
89
  ### Full-suite worker ceiling (`CORE_MAX_WORKERS`, `vitest.config.ts`)
73
90
 
74
91
  The root `test` block caps `maxWorkers` at `CORE_MAX_WORKERS` (2, `minWorkers: 1`), so
@@ -260,7 +277,31 @@ Public surface used by the CLI: `streamSessionEvents`, `parseSessionJsonl`, `det
260
277
  `retroSentinelIsFresh`, `renderRetroDebtDirective`, `findLatestTranscript`, **`resolveScanTailTranscript`**
261
278
  (new), plus the types `SessionEvent`, `RetroPendingSentinel`, `TailScanOutcome` and **`ScanTailSource`**
262
279
  (new), and the constants `RETRO_DEBT_MARKER`, `RETRO_PENDING_FILE`, `RETRO_SCAN_STATE_FILE`,
263
- `RETRO_SCAN_LOCK_NAME`, `PROCESS_SIGNATURES`, `DEFAULT_DRILL_THRESHOLD`.
280
+ `RETRO_SCAN_LOCK_NAME`, `PROCESS_SIGNATURES`, `DEFAULT_DRILL_THRESHOLD`; since
281
+ retro-debt-sentinel-per-session also the pure resolver `retroSessionPaths(dzDir, sessionId)` (with
282
+ `safeSessionDirName`, `sessionIdFromTranscript`, the type `RetroSessionPaths`) and the constants
283
+ `RETRO_SESSION_DIRNAME`, `RETRO_SESSION_PENDING_BASENAME`, `RETRO_SESSION_STATE_BASENAME`,
284
+ `RETRO_SESSION_STALE_MS`.
285
+
286
+ **One directory per session (retro-debt-sentinel-per-session).** The sentinel and the scan bookmark
287
+ live at `.dz/retro/<session>/pending.json` and `.dz/retro/<session>/scan-state.json`, where
288
+ `<session>` is the transcript basename without `.jsonl` (Claude Code names the transcript after the
289
+ session id, so it equals the hook payload's `session_id`); an id that is not a plain token — path-like,
290
+ empty, over 128 chars, `.` or `..` — is replaced by the first 32 hex of its sha256, so nothing can
291
+ escape `.dz/retro/`. A scan writes and removes files only inside its own dir; the pre-feature branch
292
+ that unlinked a sentinel of ANOTHER transcript as "foreign" is gone — with two sessions in one
293
+ worktree it deleted the neighbour's LIVE debt, and the shared bookmark made every turn a bounded
294
+ re-scan from 0 (MEASURED, backlog 58f3c56fbb9d6893). `TailScanOutcome` now carries `sessionId` and
295
+ `pendingPath`. **Legacy adoption, once:** the flat `.dz/retro-pending.json` / `retro-scan-state.json`
296
+ (the names `RETRO_PENDING_FILE` / `RETRO_SCAN_STATE_FILE` still export) are adopted by a scan only when
297
+ they name THIS transcript and the session has no per-session copy yet, and are unlinked only after
298
+ the per-session copies are committed; a stranger's, or a nobody's (no `transcript` field), is left
299
+ byte-identical. **Bounded sweep:** after each scan, `.dz/retro/*/` dirs whose `scan-state.json` is older
300
+ than `RETRO_SESSION_STALE_MS` (7 days) are removed — own dir excluded, undatable dirs kept, at most
301
+ 64 entries examined, every error swallowed. The recall hook reads only
302
+ `<session root>/.dz/retro/<session_id>/pending.json`; a payload without a string `session_id` yields
303
+ `''` before any fs call — the hook guesses no session (`test/retro-sentinel-per-session.test.ts`,
304
+ registry id `retro-sentinel-path-is-per-session`).
264
305
 
265
306
  `SessionEvent` carries an optional `toolUseId` — `tool_use.id` on a call, `tool_result.tool_use_id` on
266
307
  its result — which is the pairing key the debt fold needs to tell WHICH command a result belongs to.
@@ -482,9 +523,9 @@ explicit skills-only short circuit. `--no-verify` cannot authorize emission. A C
482
523
  | `repo-boundary` | `isRepoBoundary`, `RepoBoundaryIo` | A repository boundary is a `.git` directory with a real `HEAD` file or a worktree `gitdir:` redirect; an empty or unrelated `.git` entry is not a boundary, so `dz` run from a directory such as `/tmp` with a stray empty `.git` no longer treats it as a project root (and no longer creates a `.dz` store there). Store-scoped locks stay at `<root>/.dz/locks/<name>.lock`, a pure function of the root — and since `lock-never-seeds-store` they REFUSE (`StoreAbsentError`) instead of creating that `.dz`. |
483
524
  | `targets` | `TARGETS`, `TargetName`, `isTargetName`, `resolveTargetName`, `TARGET_ALIASES`, `TARGET_NAMES_SORTED`, `formatTargetProblem`, `formatTargetAliasNote`, `normalizeTargetToken` | `--target` name → platform adapter, plus the resolution layer in front of it. `isTargetName`/`TARGETS`/`TARGET_NAMES` are UNCHANGED: `boundaries.json` names `isTargetName` as the scanned `--target` validation boundary, and every resolution ends in exactly that guard — the boundary is routed THROUGH, never relocated. `resolveTargetName` is total and pure, with fixed precedence: exact canonical → normalised canonical (case/padding/separators: `Claude_Code`, `claudecode`) → an explicit `TARGET_ALIASES` row → unique normalised prefix → Levenshtein ≤ 3 strictly better than the runner-up → nothing. **Aliases ACCEPT; prefix and Levenshtein only SUGGEST** — an alias row is an owner decision recorded in DATA (adding one is one line and zero control flow), while a fuzzy match is a guess, and installing to the wrong target on a guess is worse than one round-trip. An ambiguous prefix (`co` → `codex`/`copilot`) is terminal with NO suggestion, for the same reason. `formatTargetProblem` renders the two-line refusal, keeping the literal `--target must be one of:` substring that shipped assertions pin |
484
525
  | `agents-policy` | `POLICY_SOURCES`, `extractPolicyBlocks`, `renderPolicySections`, `detectPolicyDrift`, `measureAgentsMdBudget` | Pure anchored policy extraction, 12-hex source stamps, drift classification and Codex project-doc byte-budget measurement. The stamps prove source/target synchronization only; they do not prove that a runtime read or obeyed the text |
485
- | `sign` | `listPackFiles`, `listSignablePackFiles`, `verifyManifest`, `verifySbomAgainstManifest` | Shared node_modules/.git exclusions; verify sees MORE than sign (smuggled symlinks still fail). After authenticating the Ed25519 manifest, verification derives the canonical CycloneDX document from those signed entries and requires the no-follow `sbom.json` read to match it exactly. Current/v3 signing refuses malformed, duplicate-key, or precision-losing root `package.json` JSON and preserves object order throughout `exports`, `imports`, and `typesVersions`, so condition-order entry-point changes cannot hide behind packer-noise canonicalisation. Readers retain v1/v2 compatibility |
526
+ | `sign` | `listPackFiles`, `listSignablePackFiles`, `verifyManifest`, `verifySbomAgainstManifest`, `packAllowlistFromPackageJson`, `isInsidePackAllowlist`, `OUTSIDE_FILES_REASON` | Shared node_modules/.git exclusions; verify sees MORE than sign (smuggled symlinks still fail). The sweep scans the whole directory and skips nothing; a swept path outside `package.json.files` (directory entries, exact files, `main`/`bin`, `*` globs; root `package.json` and `readme`/`copying`/`license`/`licence` bare or `.<ext>` not ending in `~`/`$` always inside per npm-packlist, `CHANGELOG*` not — pnpm omitted it, measured) is still a failure but reads `present in the directory but not signed — outside package.json.files, the packer would not ship it`, and `VerifyResult.outsideFiles` lists such paths. After authenticating the Ed25519 manifest, verification derives the canonical CycloneDX document from those signed entries and requires the no-follow `sbom.json` read to match it exactly. Current/v3 signing refuses malformed, duplicate-key, or precision-losing root `package.json` JSON and preserves object order throughout `exports`, `imports`, and `typesVersions`, so condition-order entry-point changes cannot hide behind packer-noise canonicalisation. Readers retain v1/v2 compatibility |
486
527
  | `guard` | `evaluateGuard`, `resolveRules`, `scanSecrets`, `scanSecretsChunked`, `SECRET_SCAN_OVERLAP_BYTES`, `DEFAULT_RULES`, `parsePnpmLockImporters` | Declarative HARD/SOFT constraint engine behind `dz guard` (publish/teach/consolidate pre-flight; fail-closed). The SOFT `signature-fresh` rule warns before publish when a changed pack no longer verifies against its signed `.dz-manifest.json`; all manifest, key, and filesystem reads remain in the CLI fact gatherer. The SOFT `lockfile-in-sync` rule compares each workspace package's `@dzhechkov/*` dep specs against the specifier `pnpm-lock.yaml` records for that importer — the `ERR_PNPM_OUTDATED_LOCKFILE` CI break, caught at publish. Its lockfile reader (`parsePnpmLockImporters`) is a pure RECOGNISE-OR-REFUSE parser (no YAML dependency): it reads only the `lockfileVersion: 9`+ importer layout and returns `undefined` for a legacy v5/v6 file, a truncated one, or any shape that leaves an importer with zero specifiers — because a half-parse reports every real dependency as "not recorded". The rule FAILS OPEN on that `undefined` (no violation) and is pinned SOFT-only via `SOFT_ONLY_RULES`, so no config can turn a parser that admits uncertainty into a publish blocker. The HARD `licence-hold` rule (+ `LICENCE_HOLD_PENDING_MARKER`) is the machine side of a declared licence precondition (`package.json.licenseHold`, ADR-001 hermes-claude-adaptation): silent while the pack stays `private:true` (the npm layer refuses it), it HARD-blocks publish the moment the pack becomes publishable with the hold unsatisfied — LICENSE absent/empty or still carrying the `<!-- PENDING:` grant placeholder, no `Grant-Confirmation: <url>` line, empty THIRD_PARTY_NOTICES, or a non-SPDX license field |
487
- | `pack-inventory` | `listPublishInventory`, `gatherPublishSecretFacts`, `readFileChunks`, `parseNpmPackListing` | Publish inventory from a supplied tarball, a content-hash cache, or the live packer (`npm pack --dry-run --json`), with a named `fallback-walk` on packer failure. Scans the inventory as streams, retaining every coverage gap by name; files are never skipped for size |
528
+ | `pack-inventory` | `listPublishInventory`, `gatherPublishSecretFacts`, `readFileChunks`, `parseNpmPackListing`, `looksBinarySample`, `NUL_RATIO` | Publish inventory from a supplied tarball, a content-hash cache, or the live packer (`npm pack --dry-run --json`), with a named `fallback-walk` on packer failure. Scans the inventory as streams, retaining every coverage gap by name; files are never skipped for size. **The `binary` skip is a RATIO, not "one NUL"** (feature `pack-inventory-binary-sniff-ratio`): `looksBinarySample(first 8 KiB)` is binary iff NUL bytes exceed `NUL_RATIO = 0.01` of its length; empty ⇒ text. ONLY NULs count — the rule it replaces skipped on a NUL and nothing else, so any wider criterion (other control bytes, UTF-8 validity) would skip files the old rule scanned: a latin-1 source with a secret, a text with `\x01` separators — a fail-open regression (fix round 1, F1). UTF-16 (about half NULs) stays binary; a PNG with few NULs is scanned — harmless, the scan is read-only. MEASURED 2026-09-21 (backlog d3841a3b): the old `includes(0)` sniff skipped a 19 628-byte TypeScript source with ONE NUL at offset 4383 — together with its dist twin — from the no-secrets scan, fail-open. One NUL in 8 KiB of text is now scanned; UTF-16 and NUL-padded binaries are still skipped with the `binary` label. Mutation-defended: `binary-sniff-one-nul-is-text` |
488
529
  | `slop-lint` | `slopLint`, `parseSlopRegistry`, `validateSlopLintConfig`, `DEFAULT_SLOP_CONFIG`, `BUNDLED_SLOP_REGISTRY_URL` | Pure deterministic EN/RU lexical-density and structural-style analysis behind advisory `dz lint`. It excludes protected Markdown, requires at least two distinct registered marker IDs in one paragraph, divides marker hits by `max(visibleWords, wordFloor)`, and reports bullet walls or registered three-adjective stacks independently. Under the default `4`/`2`/`25` policy, the distinct-ID floor owns paragraphs through 50 words and density is the dilution cap from 51 words onward. The core performs no file, network, clock, locale, or process I/O; policy/config failures are typed diagnostics rather than empty clean results. |
489
530
  | `stem` | `tokenize`, `stemToken`, `stems` | Zero-dependency EN/RU word-form normalisation (light suffix stripping applied to BOTH sides of a match) behind registry search and `recommend`, so «анализы» finds «анализ»; a RU topic dictionary maps Russian queries onto catalogue topics, and an unmapped topic is reported as a miss rather than silently widened. |
490
531
  | `course-staleness` | `classifyCourseStaleness`, `CourseStalenessState`, `CourseStalenessInput`, `CourseStalenessResult` | Pure tutorial/package parity classifier. It distinguishes `S0 SHIPPED`, `S3 TUTORIAL_STALE`, `S4 PACKAGE_BEHIND`, malformed/mismatched/unknown registry inputs, and—load-bearing—`E2 UNSTAMPED`; an absent source stamp can never collapse into shipped. The caller supplies registry facts, so classification performs no file, process, clock, or network I/O. |
@@ -1206,8 +1247,11 @@ for NUL bytes, naming each offender and its byte offset. It prefers a valid inve
1206
1247
  otherwise it filters the offline walk by this package's `files` allowlist (plus `package.json`).
1207
1248
  It reports the inventory source, inspected count and excluded count, requires at least 100
1208
1249
  text files, and fails on unreadable files. Rebuild `dist` before running the census: stale
1209
- compiled bytes are checked too. The scanners' git-compatible binary sniff stays unchanged;
1210
- source string literals use escapes to preserve runtime NUL values without hiding text from scans.
1250
+ compiled bytes are checked too. This census is stricter than the no-secrets scanner's sniff on
1251
+ purpose: the scanner's `looksBinarySample` treats one NUL in 8 KiB of valid UTF-8 as text (ratio
1252
+ rule above), while the census names EVERY NUL in a packed source, because a NUL in a source file is
1253
+ a defect in the file even when the scanner can read past it. Source string literals use escapes to
1254
+ preserve runtime NUL values without hiding text from scans.
1211
1255
 
1212
1256
  **Every package ships a non-empty LICENSE.** `test/package-license-present.test.ts` walks every
1213
1257
  directory under `packages/@dzhechkov/` with a `package.json`, including private packages, and names
@@ -1854,7 +1898,11 @@ the training-pair capture instead of re-spending recall. Measured motive: after
1854
1898
  Claude coders opened `01_requirements.md` in 5 of 7 runs (39 % before), while 37 of 48 post-directive coders
1855
1899
  were Codex, whose file reads are invisible to the transcript instrument.
1856
1900
 
1857
- `0.8.44` — this release (day 24.09, published 2026-09-24). Four changes live in this package. **pack-artifact** —
1901
+ `0.8.46` — this release (night 25→26.09, plan N1–N6, published 2026-09-26). **retro-debt-sentinel-per-session:** the admission-debt sentinel and scan cursor live under `.dz/retro/<sessionId>/` — two sessions in one worktree never read or delete each other's debt; hub helpers regenerated, `APPLY_LEG_VERSION` 13. **temp-root-post-run-check** (`@dzhechkov/core`): the vitest run guard re-scans the system temp root after the run and names a `.dz`/`.git` created during it. **verify-pack-sweep-respects-files:** an unsigned path outside `package.json#files` is worded «present in the directory … the packer would not ship it» (verdict unchanged, `outsideFiles` in the result); the always-included set follows npm-packlist. **round-exec-claim-takeover:** a `dz round exec` claim with a proven-dead owner is taken over loudly. **pack-inventory-binary-sniff-ratio:** the no-secrets binary sniff skips only on a NUL ratio above 1 % of the first 8 KiB, never on one byte; health-advisor no longer packs `__pycache__`. **serial-census-ignores-comments:** the serial-suite census parses every suite with TypeScript's parser (test-side helper) — markers in comments and fixture strings no longer force a unit test into the serial pool.
1902
+
1903
+ `0.8.45` — previous release (25.09, package P1–P5). **unique-stamped-path:** same-millisecond stamped artifacts never overwrite each other — `dz setup --force` writes the hook backup with `writeUniqueStampedFile` (exclusive create, next `-N` suffix on EEXIST, safe across processes), the corrupt lesson-state quarantine uses `uniqueStampedPath` under its existing lock, and a census test refuses any new raw `toISOString().replace(/[:.]/g` path (feature unique-stamped-path).
1904
+
1905
+ `0.8.44` — previous release (day 24.09, published 2026-09-24). Four changes live in this package. **pack-artifact** —
1858
1906
  `packArtifact({ pkgDir, destDir, exec, pinVersions })` is the ONE packer behind sign, publish and the drift gate
1859
1907
  (`npm pack`, staging with restore in `finally`, `files[]` from `tar -tzf`, `UnknownWorkspaceSpecError` on an
1860
1908
  unpinnable spec); `readWorkspaceVersions(repoRoot)` supplies the map; `formatDriftFiles` names drifted files.
@@ -149,7 +149,7 @@ export declare function probeRecallEngine(socketPath: string, timeoutMs?: number
149
149
  * either failure mode degrades to the SAME honest `cosine-fallback` reply shape as every other
150
150
  * failure, never a bare protocol `{error}`.
151
151
  */
152
- export declare const APPLY_LEG_VERSION = 12;
152
+ export declare const APPLY_LEG_VERSION = 13;
153
153
  /**
154
154
  * Parse the `dz-apply-leg-version` stamp from a deployed helper file. Unlike
155
155
  * `writerVersionOf` (which floors an absent stamp at `0`), this returns `-1` for "no stamp at
@@ -1 +1 @@
1
- {"version":3,"file":"apply-leg.d.ts","sourceRoot":"","sources":["../src/apply-leg.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"apply-leg.d.ts","sourceRoot":"","sources":["../src/apply-leg.ts"],"names":[],"mappings":"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"}
package/dist/apply-leg.js CHANGED
@@ -212,7 +212,7 @@ export function probeRecallEngine(socketPath, timeoutMs = 1000) {
212
212
  * either failure mode degrades to the SAME honest `cosine-fallback` reply shape as every other
213
213
  * failure, never a bare protocol `{error}`.
214
214
  */
215
- export const APPLY_LEG_VERSION = 12;
215
+ export const APPLY_LEG_VERSION = 13;
216
216
  /**
217
217
  * Parse the `dz-apply-leg-version` stamp from a deployed helper file. Unlike
218
218
  * `writerVersionOf` (which floors an absent stamp at `0`), this returns `-1` for "no stamp at
@@ -445,19 +445,34 @@ async function loadPolicy() {
445
445
 
446
446
  /**
447
447
  * Retro admission-debt directive (feature narrated-error-must-be-taught, ADR-001 D2/D3). The Stop
448
- * hook's scan-tail arms \`.dz/retro-pending.json\` when the assistant admitted an error without a
449
- * teach; THIS hook confronts the assistant on the very next prompt. Contract:
448
+ * hook's scan-tail arms \`.dz/retro/<session>/pending.json\` when the assistant admitted an error
449
+ * without a teach; THIS hook confronts the assistant on the very next prompt. Contract:
450
+ * - no string session_id in the payload ⇒ '' BEFORE any fs call (the hook guesses no session);
450
451
  * - sentinel absent ⇒ '' and ZERO extra work beyond one existsSync (the no-noise pin — output
451
452
  * stays byte-identical to a build without this feature);
452
453
  * - stale / other-session sentinel ⇒ '' (the debt belongs to a dead session; retro collected it);
453
454
  * - core module absent or old (no directive exports) ⇒ '' — inert, NEVER-BLOCK.
454
455
  */
455
456
  // AM-7 (fix round 1): SESSION_ROOT, not PROJECT — the sentinel is a per-session artifact (see the
456
- // SESSION_ROOT comment above).
457
- const RETRO_PENDING = path.join(SESSION_ROOT, '.dz', 'retro-pending.json');
457
+ // SESSION_ROOT comment above). retro-debt-sentinel-per-session: per-session by PATH now too — the
458
+ // root is the session's, and the file is under \`.dz/retro/<safeId>/\`, so two sessions in one
459
+ // worktree can no longer read (or clear) each other's debt through one shared flat file.
460
+ // TWIN of safeSessionDirName in session-retro.ts — duplicated inline because this hook must stay
461
+ // dependency-free; pinned to equal outputs by test retro-sentinel-per-session.test.ts (AC-6/twin).
462
+ const SAFE_SESSION_ID_RE = /^[A-Za-z0-9._-]{1,128}$/;
463
+ function safeSessionDirName(sessionId) {
464
+ if (SAFE_SESSION_ID_RE.test(sessionId) && sessionId !== '.' && sessionId !== '..') return sessionId;
465
+ return crypto.createHash('sha256').update(sessionId).digest('hex').slice(0, 32);
466
+ }
467
+ function retroPendingPathFor(sessionId) {
468
+ return path.join(SESSION_ROOT, '.dz', 'retro', safeSessionDirName(sessionId), 'pending.json');
469
+ }
458
470
  async function retroDebtDirective(payload) {
459
- if (!fs.existsSync(RETRO_PENDING)) return '';
460
- const sentinel = safe(() => JSON.parse(fs.readFileSync(RETRO_PENDING, 'utf-8')), undefined);
471
+ const sessionId = payload && typeof payload.session_id === 'string' ? payload.session_id : '';
472
+ if (sessionId === '') return '';
473
+ const pendingPath = retroPendingPathFor(sessionId);
474
+ if (!fs.existsSync(pendingPath)) return '';
475
+ const sentinel = safe(() => JSON.parse(fs.readFileSync(pendingPath, 'utf-8')), undefined);
461
476
  if (!sentinel || typeof sentinel.snippet !== 'string' || sentinel.snippet === '') return '';
462
477
  const mod = await loadCoreModule(
463
478
  'session-retro.js',
@@ -1 +1 @@
1
- {"version":3,"file":"apply-leg.js","sourceRoot":"","sources":["../src/apply-leg.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"apply-leg.js","sourceRoot":"","sources":["../src/apply-leg.ts"],"names":[],"mappings":"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"}