@lannguyensi/harness 0.40.0 → 0.41.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.
Files changed (113) hide show
  1. package/CHANGELOG.md +37 -0
  2. package/dist/cli/approve/understanding.js +28 -0
  3. package/dist/cli/approve/understanding.js.map +1 -1
  4. package/dist/cli/doctor/codex.d.ts +8 -0
  5. package/dist/cli/doctor/codex.js +8 -1
  6. package/dist/cli/doctor/codex.js.map +1 -1
  7. package/dist/cli/doctor/format.js +23 -11
  8. package/dist/cli/doctor/format.js.map +1 -1
  9. package/dist/cli/doctor/index.d.ts +36 -0
  10. package/dist/cli/doctor/index.js +131 -29
  11. package/dist/cli/doctor/index.js.map +1 -1
  12. package/dist/cli/doctor/types.d.ts +26 -0
  13. package/dist/cli/dry-run.js +5 -0
  14. package/dist/cli/dry-run.js.map +1 -1
  15. package/dist/cli/explain.js +16 -3
  16. package/dist/cli/explain.js.map +1 -1
  17. package/dist/cli/index.js +75 -6
  18. package/dist/cli/index.js.map +1 -1
  19. package/dist/cli/init/composer.js +10 -31
  20. package/dist/cli/init/composer.js.map +1 -1
  21. package/dist/cli/init/index.d.ts +18 -0
  22. package/dist/cli/init/index.js +28 -2
  23. package/dist/cli/init/index.js.map +1 -1
  24. package/dist/cli/init/interactive.d.ts +8 -0
  25. package/dist/cli/init/interactive.js +22 -1
  26. package/dist/cli/init/interactive.js.map +1 -1
  27. package/dist/cli/init/profiles.d.ts +2 -2
  28. package/dist/cli/init/profiles.js +9 -0
  29. package/dist/cli/init/profiles.js.map +1 -1
  30. package/dist/cli/init/templates.d.ts +1 -1
  31. package/dist/cli/init/templates.js +153 -3
  32. package/dist/cli/init/templates.js.map +1 -1
  33. package/dist/cli/list.js +3 -1
  34. package/dist/cli/list.js.map +1 -1
  35. package/dist/cli/pack/hook-bootstrap.d.ts +24 -0
  36. package/dist/cli/pack/hook-bootstrap.js +47 -1
  37. package/dist/cli/pack/hook-bootstrap.js.map +1 -1
  38. package/dist/cli/pack/hook-branch-protection.js +9 -1
  39. package/dist/cli/pack/hook-branch-protection.js.map +1 -1
  40. package/dist/cli/pack/hook-codex-post-tool-use.d.ts +25 -0
  41. package/dist/cli/pack/hook-codex-post-tool-use.js +160 -0
  42. package/dist/cli/pack/hook-codex-post-tool-use.js.map +1 -0
  43. package/dist/cli/pack/hook-codex-pre-tool-use.d.ts +1 -0
  44. package/dist/cli/pack/hook-codex-pre-tool-use.js +43 -10
  45. package/dist/cli/pack/hook-codex-pre-tool-use.js.map +1 -1
  46. package/dist/cli/pack/hook-codex-stop.js +1 -8
  47. package/dist/cli/pack/hook-codex-stop.js.map +1 -1
  48. package/dist/cli/pack/hook-post-tool-use.js +16 -131
  49. package/dist/cli/pack/hook-post-tool-use.js.map +1 -1
  50. package/dist/cli/pack/hook-pre-tool-use.js +54 -2
  51. package/dist/cli/pack/hook-pre-tool-use.js.map +1 -1
  52. package/dist/cli/pack/hook-stay-in-scope.js +63 -20
  53. package/dist/cli/pack/hook-stay-in-scope.js.map +1 -1
  54. package/dist/cli/pack/hook-track-active-claim.js +33 -9
  55. package/dist/cli/pack/hook-track-active-claim.js.map +1 -1
  56. package/dist/cli/pack/index.d.ts +2 -1
  57. package/dist/cli/pack/index.js +2 -1
  58. package/dist/cli/pack/index.js.map +1 -1
  59. package/dist/cli/pack/mutate.d.ts +19 -0
  60. package/dist/cli/pack/mutate.js +38 -0
  61. package/dist/cli/pack/mutate.js.map +1 -1
  62. package/dist/cli/pack/reseed.d.ts +19 -0
  63. package/dist/cli/pack/reseed.js +118 -0
  64. package/dist/cli/pack/reseed.js.map +1 -0
  65. package/dist/cli/pause/index.js +12 -3
  66. package/dist/cli/pause/index.js.map +1 -1
  67. package/dist/cli/session-start/index.d.ts +14 -0
  68. package/dist/cli/session-start/index.js +42 -2
  69. package/dist/cli/session-start/index.js.map +1 -1
  70. package/dist/cli/validate/checks.js +8 -0
  71. package/dist/cli/validate/checks.js.map +1 -1
  72. package/dist/policy-packs/builtin/branch-protection-runtime.d.ts +4 -2
  73. package/dist/policy-packs/builtin/branch-protection-runtime.js +4 -2
  74. package/dist/policy-packs/builtin/branch-protection-runtime.js.map +1 -1
  75. package/dist/policy-packs/builtin/branch-protection.d.ts +10 -1
  76. package/dist/policy-packs/builtin/branch-protection.js +17 -0
  77. package/dist/policy-packs/builtin/branch-protection.js.map +1 -1
  78. package/dist/policy-packs/builtin/understanding-before-execution-runtime.d.ts +197 -24
  79. package/dist/policy-packs/builtin/understanding-before-execution-runtime.js +342 -40
  80. package/dist/policy-packs/builtin/understanding-before-execution-runtime.js.map +1 -1
  81. package/dist/policy-packs/builtin/understanding-before-execution.d.ts +26 -1
  82. package/dist/policy-packs/builtin/understanding-before-execution.js +302 -17
  83. package/dist/policy-packs/builtin/understanding-before-execution.js.map +1 -1
  84. package/dist/policy-packs/registry.d.ts +22 -1
  85. package/dist/policy-packs/registry.js +19 -2
  86. package/dist/policy-packs/registry.js.map +1 -1
  87. package/dist/policy-packs/ux-compare.d.ts +14 -0
  88. package/dist/policy-packs/ux-compare.js +58 -0
  89. package/dist/policy-packs/ux-compare.js.map +1 -0
  90. package/dist/policy-packs/ux-drift-check.d.ts +27 -0
  91. package/dist/policy-packs/ux-drift-check.js +78 -0
  92. package/dist/policy-packs/ux-drift-check.js.map +1 -0
  93. package/dist/probes/mcp.d.ts +13 -0
  94. package/dist/probes/mcp.js +57 -0
  95. package/dist/probes/mcp.js.map +1 -1
  96. package/dist/runtime/approval-signing.d.ts +82 -0
  97. package/dist/runtime/approval-signing.js +275 -0
  98. package/dist/runtime/approval-signing.js.map +1 -0
  99. package/dist/runtime/intercept.js +62 -5
  100. package/dist/runtime/intercept.js.map +1 -1
  101. package/dist/runtime/pause-sentinel.js +14 -3
  102. package/dist/runtime/pause-sentinel.js.map +1 -1
  103. package/dist/runtime/recovery-git-commit.d.ts +22 -0
  104. package/dist/runtime/recovery-git-commit.js +284 -0
  105. package/dist/runtime/recovery-git-commit.js.map +1 -0
  106. package/dist/runtime/tool-name-aliases.d.ts +1 -0
  107. package/dist/runtime/tool-name-aliases.js +7 -1
  108. package/dist/runtime/tool-name-aliases.js.map +1 -1
  109. package/dist/schema/index.d.ts +53 -42
  110. package/dist/schema/policies.d.ts +56 -44
  111. package/dist/schema/policies.js +79 -9
  112. package/dist/schema/policies.js.map +1 -1
  113. package/package.json +1 -1
@@ -445,7 +445,7 @@ export declare const ManifestSchema: z.ZodEffects<z.ZodObject<{
445
445
  bash_match?: string | undefined;
446
446
  extract?: Record<string, string> | undefined;
447
447
  }>;
448
- requires: z.ZodObject<{
448
+ requires: z.ZodOptional<z.ZodObject<{
449
449
  ledger_tag: z.ZodString;
450
450
  within: z.ZodOptional<z.ZodEffects<z.ZodString, string, string>>;
451
451
  count: z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodEffects<z.ZodEffects<z.ZodObject<{
@@ -512,9 +512,10 @@ export declare const ManifestSchema: z.ZodEffects<z.ZodObject<{
512
512
  max?: number | undefined;
513
513
  } | undefined;
514
514
  at_head?: boolean | undefined;
515
- }>;
515
+ }>>;
516
516
  hook: z.ZodString;
517
517
  enforcement: z.ZodEnum<["block", "warn", "require_approval"]>;
518
+ operator_only: z.ZodOptional<z.ZodBoolean>;
518
519
  producers: z.ZodOptional<z.ZodArray<z.ZodDiscriminatedUnion<"kind", [z.ZodObject<{
519
520
  kind: z.ZodLiteral<"bash">;
520
521
  command: z.ZodString;
@@ -604,7 +605,9 @@ export declare const ManifestSchema: z.ZodEffects<z.ZodObject<{
604
605
  bash_match?: string | undefined;
605
606
  extract?: Record<string, string> | undefined;
606
607
  };
607
- requires: {
608
+ hook: string;
609
+ enforcement: "warn" | "block" | "require_approval";
610
+ requires?: {
608
611
  ledger_tag: string;
609
612
  within?: string | undefined;
610
613
  count?: {
@@ -613,9 +616,8 @@ export declare const ManifestSchema: z.ZodEffects<z.ZodObject<{
613
616
  max?: number | undefined;
614
617
  } | undefined;
615
618
  at_head?: boolean | undefined;
616
- };
617
- hook: string;
618
- enforcement: "warn" | "block" | "require_approval";
619
+ } | undefined;
620
+ operator_only?: boolean | undefined;
619
621
  producers?: ({
620
622
  command: string;
621
623
  description: string;
@@ -651,7 +653,9 @@ export declare const ManifestSchema: z.ZodEffects<z.ZodObject<{
651
653
  bash_match?: string | undefined;
652
654
  extract?: Record<string, string> | undefined;
653
655
  };
654
- requires: {
656
+ hook: string;
657
+ enforcement: "warn" | "block" | "require_approval";
658
+ requires?: {
655
659
  ledger_tag: string;
656
660
  within?: string | undefined;
657
661
  count?: {
@@ -660,9 +664,8 @@ export declare const ManifestSchema: z.ZodEffects<z.ZodObject<{
660
664
  max?: number | undefined;
661
665
  } | undefined;
662
666
  at_head?: boolean | undefined;
663
- };
664
- hook: string;
665
- enforcement: "warn" | "block" | "require_approval";
667
+ } | undefined;
668
+ operator_only?: boolean | undefined;
666
669
  producers?: ({
667
670
  command: string;
668
671
  description: string;
@@ -698,7 +701,9 @@ export declare const ManifestSchema: z.ZodEffects<z.ZodObject<{
698
701
  bash_match?: string | undefined;
699
702
  extract?: Record<string, string> | undefined;
700
703
  };
701
- requires: {
704
+ hook: string;
705
+ enforcement: "warn" | "block" | "require_approval";
706
+ requires?: {
702
707
  ledger_tag: string;
703
708
  within?: string | undefined;
704
709
  count?: {
@@ -707,9 +712,8 @@ export declare const ManifestSchema: z.ZodEffects<z.ZodObject<{
707
712
  max?: number | undefined;
708
713
  } | undefined;
709
714
  at_head?: boolean | undefined;
710
- };
711
- hook: string;
712
- enforcement: "warn" | "block" | "require_approval";
715
+ } | undefined;
716
+ operator_only?: boolean | undefined;
713
717
  producers?: ({
714
718
  command: string;
715
719
  description: string;
@@ -745,7 +749,9 @@ export declare const ManifestSchema: z.ZodEffects<z.ZodObject<{
745
749
  bash_match?: string | undefined;
746
750
  extract?: Record<string, string> | undefined;
747
751
  };
748
- requires: {
752
+ hook: string;
753
+ enforcement: "warn" | "block" | "require_approval";
754
+ requires?: {
749
755
  ledger_tag: string;
750
756
  within?: string | undefined;
751
757
  count?: {
@@ -754,9 +760,8 @@ export declare const ManifestSchema: z.ZodEffects<z.ZodObject<{
754
760
  max?: number | undefined;
755
761
  } | undefined;
756
762
  at_head?: boolean | undefined;
757
- };
758
- hook: string;
759
- enforcement: "warn" | "block" | "require_approval";
763
+ } | undefined;
764
+ operator_only?: boolean | undefined;
760
765
  producers?: ({
761
766
  command: string;
762
767
  description: string;
@@ -792,7 +797,9 @@ export declare const ManifestSchema: z.ZodEffects<z.ZodObject<{
792
797
  bash_match?: string | undefined;
793
798
  extract?: Record<string, string> | undefined;
794
799
  };
795
- requires: {
800
+ hook: string;
801
+ enforcement: "warn" | "block" | "require_approval";
802
+ requires?: {
796
803
  ledger_tag: string;
797
804
  within?: string | undefined;
798
805
  count?: {
@@ -801,9 +808,8 @@ export declare const ManifestSchema: z.ZodEffects<z.ZodObject<{
801
808
  max?: number | undefined;
802
809
  } | undefined;
803
810
  at_head?: boolean | undefined;
804
- };
805
- hook: string;
806
- enforcement: "warn" | "block" | "require_approval";
811
+ } | undefined;
812
+ operator_only?: boolean | undefined;
807
813
  producers?: ({
808
814
  command: string;
809
815
  description: string;
@@ -839,7 +845,9 @@ export declare const ManifestSchema: z.ZodEffects<z.ZodObject<{
839
845
  bash_match?: string | undefined;
840
846
  extract?: Record<string, string> | undefined;
841
847
  };
842
- requires: {
848
+ hook: string;
849
+ enforcement: "warn" | "block" | "require_approval";
850
+ requires?: {
843
851
  ledger_tag: string;
844
852
  within?: string | undefined;
845
853
  count?: {
@@ -848,9 +856,8 @@ export declare const ManifestSchema: z.ZodEffects<z.ZodObject<{
848
856
  max?: number | undefined;
849
857
  } | undefined;
850
858
  at_head?: boolean | undefined;
851
- };
852
- hook: string;
853
- enforcement: "warn" | "block" | "require_approval";
859
+ } | undefined;
860
+ operator_only?: boolean | undefined;
854
861
  producers?: ({
855
862
  command: string;
856
863
  description: string;
@@ -2569,7 +2576,9 @@ export declare const ManifestSchema: z.ZodEffects<z.ZodObject<{
2569
2576
  bash_match?: string | undefined;
2570
2577
  extract?: Record<string, string> | undefined;
2571
2578
  };
2572
- requires: {
2579
+ hook: string;
2580
+ enforcement: "warn" | "block" | "require_approval";
2581
+ requires?: {
2573
2582
  ledger_tag: string;
2574
2583
  within?: string | undefined;
2575
2584
  count?: {
@@ -2578,9 +2587,8 @@ export declare const ManifestSchema: z.ZodEffects<z.ZodObject<{
2578
2587
  max?: number | undefined;
2579
2588
  } | undefined;
2580
2589
  at_head?: boolean | undefined;
2581
- };
2582
- hook: string;
2583
- enforcement: "warn" | "block" | "require_approval";
2590
+ } | undefined;
2591
+ operator_only?: boolean | undefined;
2584
2592
  producers?: ({
2585
2593
  command: string;
2586
2594
  description: string;
@@ -2865,7 +2873,9 @@ export declare const ManifestSchema: z.ZodEffects<z.ZodObject<{
2865
2873
  bash_match?: string | undefined;
2866
2874
  extract?: Record<string, string> | undefined;
2867
2875
  };
2868
- requires: {
2876
+ hook: string;
2877
+ enforcement: "warn" | "block" | "require_approval";
2878
+ requires?: {
2869
2879
  ledger_tag: string;
2870
2880
  within?: string | undefined;
2871
2881
  count?: {
@@ -2874,9 +2884,8 @@ export declare const ManifestSchema: z.ZodEffects<z.ZodObject<{
2874
2884
  max?: number | undefined;
2875
2885
  } | undefined;
2876
2886
  at_head?: boolean | undefined;
2877
- };
2878
- hook: string;
2879
- enforcement: "warn" | "block" | "require_approval";
2887
+ } | undefined;
2888
+ operator_only?: boolean | undefined;
2880
2889
  producers?: ({
2881
2890
  command: string;
2882
2891
  description: string;
@@ -3161,7 +3170,9 @@ export declare const ManifestSchema: z.ZodEffects<z.ZodObject<{
3161
3170
  bash_match?: string | undefined;
3162
3171
  extract?: Record<string, string> | undefined;
3163
3172
  };
3164
- requires: {
3173
+ hook: string;
3174
+ enforcement: "warn" | "block" | "require_approval";
3175
+ requires?: {
3165
3176
  ledger_tag: string;
3166
3177
  within?: string | undefined;
3167
3178
  count?: {
@@ -3170,9 +3181,8 @@ export declare const ManifestSchema: z.ZodEffects<z.ZodObject<{
3170
3181
  max?: number | undefined;
3171
3182
  } | undefined;
3172
3183
  at_head?: boolean | undefined;
3173
- };
3174
- hook: string;
3175
- enforcement: "warn" | "block" | "require_approval";
3184
+ } | undefined;
3185
+ operator_only?: boolean | undefined;
3176
3186
  producers?: ({
3177
3187
  command: string;
3178
3188
  description: string;
@@ -3457,7 +3467,9 @@ export declare const ManifestSchema: z.ZodEffects<z.ZodObject<{
3457
3467
  bash_match?: string | undefined;
3458
3468
  extract?: Record<string, string> | undefined;
3459
3469
  };
3460
- requires: {
3470
+ hook: string;
3471
+ enforcement: "warn" | "block" | "require_approval";
3472
+ requires?: {
3461
3473
  ledger_tag: string;
3462
3474
  within?: string | undefined;
3463
3475
  count?: {
@@ -3466,9 +3478,8 @@ export declare const ManifestSchema: z.ZodEffects<z.ZodObject<{
3466
3478
  max?: number | undefined;
3467
3479
  } | undefined;
3468
3480
  at_head?: boolean | undefined;
3469
- };
3470
- hook: string;
3471
- enforcement: "warn" | "block" | "require_approval";
3481
+ } | undefined;
3482
+ operator_only?: boolean | undefined;
3472
3483
  producers?: ({
3473
3484
  command: string;
3474
3485
  description: string;
@@ -120,7 +120,7 @@ export declare const PolicySchema: z.ZodEffects<z.ZodObject<{
120
120
  bash_match?: string | undefined;
121
121
  extract?: Record<string, string> | undefined;
122
122
  }>;
123
- requires: z.ZodObject<{
123
+ requires: z.ZodOptional<z.ZodObject<{
124
124
  ledger_tag: z.ZodString;
125
125
  within: z.ZodOptional<z.ZodEffects<z.ZodString, string, string>>;
126
126
  count: z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodEffects<z.ZodEffects<z.ZodObject<{
@@ -187,9 +187,10 @@ export declare const PolicySchema: z.ZodEffects<z.ZodObject<{
187
187
  max?: number | undefined;
188
188
  } | undefined;
189
189
  at_head?: boolean | undefined;
190
- }>;
190
+ }>>;
191
191
  hook: z.ZodString;
192
192
  enforcement: z.ZodEnum<["block", "warn", "require_approval"]>;
193
+ operator_only: z.ZodOptional<z.ZodBoolean>;
193
194
  producers: z.ZodOptional<z.ZodArray<z.ZodDiscriminatedUnion<"kind", [z.ZodObject<{
194
195
  kind: z.ZodLiteral<"bash">;
195
196
  command: z.ZodString;
@@ -279,7 +280,9 @@ export declare const PolicySchema: z.ZodEffects<z.ZodObject<{
279
280
  bash_match?: string | undefined;
280
281
  extract?: Record<string, string> | undefined;
281
282
  };
282
- requires: {
283
+ hook: string;
284
+ enforcement: "warn" | "block" | "require_approval";
285
+ requires?: {
283
286
  ledger_tag: string;
284
287
  within?: string | undefined;
285
288
  count?: {
@@ -288,9 +291,8 @@ export declare const PolicySchema: z.ZodEffects<z.ZodObject<{
288
291
  max?: number | undefined;
289
292
  } | undefined;
290
293
  at_head?: boolean | undefined;
291
- };
292
- hook: string;
293
- enforcement: "warn" | "block" | "require_approval";
294
+ } | undefined;
295
+ operator_only?: boolean | undefined;
294
296
  producers?: ({
295
297
  command: string;
296
298
  description: string;
@@ -326,7 +328,9 @@ export declare const PolicySchema: z.ZodEffects<z.ZodObject<{
326
328
  bash_match?: string | undefined;
327
329
  extract?: Record<string, string> | undefined;
328
330
  };
329
- requires: {
331
+ hook: string;
332
+ enforcement: "warn" | "block" | "require_approval";
333
+ requires?: {
330
334
  ledger_tag: string;
331
335
  within?: string | undefined;
332
336
  count?: {
@@ -335,9 +339,8 @@ export declare const PolicySchema: z.ZodEffects<z.ZodObject<{
335
339
  max?: number | undefined;
336
340
  } | undefined;
337
341
  at_head?: boolean | undefined;
338
- };
339
- hook: string;
340
- enforcement: "warn" | "block" | "require_approval";
342
+ } | undefined;
343
+ operator_only?: boolean | undefined;
341
344
  producers?: ({
342
345
  command: string;
343
346
  description: string;
@@ -373,7 +376,9 @@ export declare const PolicySchema: z.ZodEffects<z.ZodObject<{
373
376
  bash_match?: string | undefined;
374
377
  extract?: Record<string, string> | undefined;
375
378
  };
376
- requires: {
379
+ hook: string;
380
+ enforcement: "warn" | "block" | "require_approval";
381
+ requires?: {
377
382
  ledger_tag: string;
378
383
  within?: string | undefined;
379
384
  count?: {
@@ -382,9 +387,8 @@ export declare const PolicySchema: z.ZodEffects<z.ZodObject<{
382
387
  max?: number | undefined;
383
388
  } | undefined;
384
389
  at_head?: boolean | undefined;
385
- };
386
- hook: string;
387
- enforcement: "warn" | "block" | "require_approval";
390
+ } | undefined;
391
+ operator_only?: boolean | undefined;
388
392
  producers?: ({
389
393
  command: string;
390
394
  description: string;
@@ -420,7 +424,9 @@ export declare const PolicySchema: z.ZodEffects<z.ZodObject<{
420
424
  bash_match?: string | undefined;
421
425
  extract?: Record<string, string> | undefined;
422
426
  };
423
- requires: {
427
+ hook: string;
428
+ enforcement: "warn" | "block" | "require_approval";
429
+ requires?: {
424
430
  ledger_tag: string;
425
431
  within?: string | undefined;
426
432
  count?: {
@@ -429,9 +435,8 @@ export declare const PolicySchema: z.ZodEffects<z.ZodObject<{
429
435
  max?: number | undefined;
430
436
  } | undefined;
431
437
  at_head?: boolean | undefined;
432
- };
433
- hook: string;
434
- enforcement: "warn" | "block" | "require_approval";
438
+ } | undefined;
439
+ operator_only?: boolean | undefined;
435
440
  producers?: ({
436
441
  command: string;
437
442
  description: string;
@@ -480,7 +485,7 @@ export declare const PoliciesSchema: z.ZodEffects<z.ZodArray<z.ZodEffects<z.ZodO
480
485
  bash_match?: string | undefined;
481
486
  extract?: Record<string, string> | undefined;
482
487
  }>;
483
- requires: z.ZodObject<{
488
+ requires: z.ZodOptional<z.ZodObject<{
484
489
  ledger_tag: z.ZodString;
485
490
  within: z.ZodOptional<z.ZodEffects<z.ZodString, string, string>>;
486
491
  count: z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodEffects<z.ZodEffects<z.ZodObject<{
@@ -547,9 +552,10 @@ export declare const PoliciesSchema: z.ZodEffects<z.ZodArray<z.ZodEffects<z.ZodO
547
552
  max?: number | undefined;
548
553
  } | undefined;
549
554
  at_head?: boolean | undefined;
550
- }>;
555
+ }>>;
551
556
  hook: z.ZodString;
552
557
  enforcement: z.ZodEnum<["block", "warn", "require_approval"]>;
558
+ operator_only: z.ZodOptional<z.ZodBoolean>;
553
559
  producers: z.ZodOptional<z.ZodArray<z.ZodDiscriminatedUnion<"kind", [z.ZodObject<{
554
560
  kind: z.ZodLiteral<"bash">;
555
561
  command: z.ZodString;
@@ -639,7 +645,9 @@ export declare const PoliciesSchema: z.ZodEffects<z.ZodArray<z.ZodEffects<z.ZodO
639
645
  bash_match?: string | undefined;
640
646
  extract?: Record<string, string> | undefined;
641
647
  };
642
- requires: {
648
+ hook: string;
649
+ enforcement: "warn" | "block" | "require_approval";
650
+ requires?: {
643
651
  ledger_tag: string;
644
652
  within?: string | undefined;
645
653
  count?: {
@@ -648,9 +656,8 @@ export declare const PoliciesSchema: z.ZodEffects<z.ZodArray<z.ZodEffects<z.ZodO
648
656
  max?: number | undefined;
649
657
  } | undefined;
650
658
  at_head?: boolean | undefined;
651
- };
652
- hook: string;
653
- enforcement: "warn" | "block" | "require_approval";
659
+ } | undefined;
660
+ operator_only?: boolean | undefined;
654
661
  producers?: ({
655
662
  command: string;
656
663
  description: string;
@@ -686,7 +693,9 @@ export declare const PoliciesSchema: z.ZodEffects<z.ZodArray<z.ZodEffects<z.ZodO
686
693
  bash_match?: string | undefined;
687
694
  extract?: Record<string, string> | undefined;
688
695
  };
689
- requires: {
696
+ hook: string;
697
+ enforcement: "warn" | "block" | "require_approval";
698
+ requires?: {
690
699
  ledger_tag: string;
691
700
  within?: string | undefined;
692
701
  count?: {
@@ -695,9 +704,8 @@ export declare const PoliciesSchema: z.ZodEffects<z.ZodArray<z.ZodEffects<z.ZodO
695
704
  max?: number | undefined;
696
705
  } | undefined;
697
706
  at_head?: boolean | undefined;
698
- };
699
- hook: string;
700
- enforcement: "warn" | "block" | "require_approval";
707
+ } | undefined;
708
+ operator_only?: boolean | undefined;
701
709
  producers?: ({
702
710
  command: string;
703
711
  description: string;
@@ -733,7 +741,9 @@ export declare const PoliciesSchema: z.ZodEffects<z.ZodArray<z.ZodEffects<z.ZodO
733
741
  bash_match?: string | undefined;
734
742
  extract?: Record<string, string> | undefined;
735
743
  };
736
- requires: {
744
+ hook: string;
745
+ enforcement: "warn" | "block" | "require_approval";
746
+ requires?: {
737
747
  ledger_tag: string;
738
748
  within?: string | undefined;
739
749
  count?: {
@@ -742,9 +752,8 @@ export declare const PoliciesSchema: z.ZodEffects<z.ZodArray<z.ZodEffects<z.ZodO
742
752
  max?: number | undefined;
743
753
  } | undefined;
744
754
  at_head?: boolean | undefined;
745
- };
746
- hook: string;
747
- enforcement: "warn" | "block" | "require_approval";
755
+ } | undefined;
756
+ operator_only?: boolean | undefined;
748
757
  producers?: ({
749
758
  command: string;
750
759
  description: string;
@@ -780,7 +789,9 @@ export declare const PoliciesSchema: z.ZodEffects<z.ZodArray<z.ZodEffects<z.ZodO
780
789
  bash_match?: string | undefined;
781
790
  extract?: Record<string, string> | undefined;
782
791
  };
783
- requires: {
792
+ hook: string;
793
+ enforcement: "warn" | "block" | "require_approval";
794
+ requires?: {
784
795
  ledger_tag: string;
785
796
  within?: string | undefined;
786
797
  count?: {
@@ -789,9 +800,8 @@ export declare const PoliciesSchema: z.ZodEffects<z.ZodArray<z.ZodEffects<z.ZodO
789
800
  max?: number | undefined;
790
801
  } | undefined;
791
802
  at_head?: boolean | undefined;
792
- };
793
- hook: string;
794
- enforcement: "warn" | "block" | "require_approval";
803
+ } | undefined;
804
+ operator_only?: boolean | undefined;
795
805
  producers?: ({
796
806
  command: string;
797
807
  description: string;
@@ -827,7 +837,9 @@ export declare const PoliciesSchema: z.ZodEffects<z.ZodArray<z.ZodEffects<z.ZodO
827
837
  bash_match?: string | undefined;
828
838
  extract?: Record<string, string> | undefined;
829
839
  };
830
- requires: {
840
+ hook: string;
841
+ enforcement: "warn" | "block" | "require_approval";
842
+ requires?: {
831
843
  ledger_tag: string;
832
844
  within?: string | undefined;
833
845
  count?: {
@@ -836,9 +848,8 @@ export declare const PoliciesSchema: z.ZodEffects<z.ZodArray<z.ZodEffects<z.ZodO
836
848
  max?: number | undefined;
837
849
  } | undefined;
838
850
  at_head?: boolean | undefined;
839
- };
840
- hook: string;
841
- enforcement: "warn" | "block" | "require_approval";
851
+ } | undefined;
852
+ operator_only?: boolean | undefined;
842
853
  producers?: ({
843
854
  command: string;
844
855
  description: string;
@@ -874,7 +885,9 @@ export declare const PoliciesSchema: z.ZodEffects<z.ZodArray<z.ZodEffects<z.ZodO
874
885
  bash_match?: string | undefined;
875
886
  extract?: Record<string, string> | undefined;
876
887
  };
877
- requires: {
888
+ hook: string;
889
+ enforcement: "warn" | "block" | "require_approval";
890
+ requires?: {
878
891
  ledger_tag: string;
879
892
  within?: string | undefined;
880
893
  count?: {
@@ -883,9 +896,8 @@ export declare const PoliciesSchema: z.ZodEffects<z.ZodArray<z.ZodEffects<z.ZodO
883
896
  max?: number | undefined;
884
897
  } | undefined;
885
898
  at_head?: boolean | undefined;
886
- };
887
- hook: string;
888
- enforcement: "warn" | "block" | "require_approval";
899
+ } | undefined;
900
+ operator_only?: boolean | undefined;
889
901
  producers?: ({
890
902
  command: string;
891
903
  description: string;
@@ -129,32 +129,102 @@ export const PolicyWhenSchema = z
129
129
  });
130
130
  }
131
131
  });
132
+ // `operator_only: true` — the unconditional operator-only deny (task
133
+ // 2cc73f55). Every other `block` policy names `requires.ledger_tag`
134
+ // evidence, but the only satisfaction primitives the engine has —
135
+ // a ledger tag (writable in-session via
136
+ // `mcp__agent-grounding__ledger_add`) or a filesystem marker (operator-
137
+ // only only while a gate already locks Bash/Write down, circular on a
138
+ // default install) — are agent-satisfiable. That leaves no honest way to
139
+ // express "the agent may NEVER do this, and cannot self-satisfy it this
140
+ // session" — see the three `deny-*` kill-switch policies in
141
+ // `src/cli/init/templates.ts`, which had to ship with permanent
142
+ // self-attestation warnings for exactly this reason.
143
+ //
144
+ // `operator_only: true` closes that gap by omission rather than by
145
+ // naming a fake evidence source: the policy declares NO `requires:` at
146
+ // all, and `intercept()` (`src/runtime/intercept.ts`) short-circuits
147
+ // before the `requires` pipeline entirely — no ledger query, no
148
+ // template substitution, no `evaluateRequires` call — so there is
149
+ // nothing an in-session actor (ledger write, marker file, env flag) can
150
+ // ever produce that flips the outcome to allow. Restricted to
151
+ // `enforcement: block`: `warn` and `require_approval` already have
152
+ // their own always-evaluated evidence paths, and require_approval's
153
+ // canonical unblock is the `harness approve risk` operator verb, not a
154
+ // requires-satisfaction story this marker would replace.
155
+ //
156
+ // Mutually exclusive with `requires:` AND `producers:` by construction
157
+ // (both enforced below): declaring `requires:` alongside it would be
158
+ // self-contradictory — an unconditional deny that also names an
159
+ // in-session-satisfiable evidence tag nobody will ever evaluate.
160
+ // `producers:` is the same class of contradiction one level up: it
161
+ // describes a documented way to PRODUCE the evidence that unblocks the
162
+ // gate ("here is a legitimate way to satisfy this"), but `operator_only:
163
+ // true` never evaluates any evidence at all, so a declared producer
164
+ // would misrepresent the gate as satisfiable when it structurally is
165
+ // not. `checkPolicySelfAttestation` (`src/cli/validate/checks.ts`)
166
+ // treats `operator_only: true` as correct-by-construction and emits
167
+ // neither the "declares no producers" warning nor a --strict error for
168
+ // it, since there is no undocumented evidence source to flag.
132
169
  export const PolicySchema = z
133
170
  .object({
134
171
  name: z.string().min(1),
135
172
  description: z.string().min(1),
136
173
  trigger: PolicyTriggerSchema,
137
- requires: RequiresSchema,
174
+ requires: RequiresSchema.optional(),
138
175
  hook: z.string().min(1),
139
176
  enforcement: PolicyEnforcementSchema,
177
+ operator_only: z.boolean().optional(),
140
178
  producers: z.array(ProducerSchema).min(1).optional(),
141
179
  ux: PolicyUxSchema.optional(),
142
180
  when: PolicyWhenSchema.optional(),
143
181
  })
144
182
  .strict()
145
183
  .superRefine((policy, ctx) => {
146
- const refs = referencedVariables(policy.requires.ledger_tag);
147
- const declared = new Set(Object.keys(policy.trigger.extract ?? {}));
148
- for (const v of refs) {
149
- if (isBuiltinVariable(v))
150
- continue;
151
- if (!declared.has(v)) {
184
+ if (policy.operator_only === true) {
185
+ if (policy.enforcement !== "block") {
152
186
  ctx.addIssue({
153
187
  code: z.ZodIssueCode.custom,
154
- path: ["requires", "ledger_tag"],
155
- message: `requires.ledger_tag references \${${v}} but no matching trigger.extract entry was declared`,
188
+ path: ["operator_only"],
189
+ message: "operator_only: true is only meaningful for enforcement: block (an unconditional operator-only deny); warn / require_approval already have their own always-evaluated evidence paths",
156
190
  });
157
191
  }
192
+ if (policy.requires !== undefined) {
193
+ ctx.addIssue({
194
+ code: z.ZodIssueCode.custom,
195
+ path: ["requires"],
196
+ message: "operator_only: true policies must not also declare requires: — an unconditional deny that also names in-session-satisfiable evidence is self-contradictory; drop requires: (the policy never evaluates it)",
197
+ });
198
+ }
199
+ if (policy.producers !== undefined) {
200
+ ctx.addIssue({
201
+ code: z.ZodIssueCode.custom,
202
+ path: ["producers"],
203
+ message: "operator_only: true policies must not also declare producers: — producers describe a documented way to satisfy the gate, but an unconditional deny never evaluates any evidence, so a declared producer would misrepresent it as satisfiable; drop producers: (or drop operator_only: true if you actually want a satisfiable requires: gate)",
204
+ });
205
+ }
206
+ }
207
+ else if (policy.requires === undefined) {
208
+ ctx.addIssue({
209
+ code: z.ZodIssueCode.custom,
210
+ path: ["requires"],
211
+ message: "requires is mandatory unless the policy declares operator_only: true (an unconditional operator-only deny)",
212
+ });
213
+ }
214
+ if (policy.requires !== undefined) {
215
+ const refs = referencedVariables(policy.requires.ledger_tag);
216
+ const declared = new Set(Object.keys(policy.trigger.extract ?? {}));
217
+ for (const v of refs) {
218
+ if (isBuiltinVariable(v))
219
+ continue;
220
+ if (!declared.has(v)) {
221
+ ctx.addIssue({
222
+ code: z.ZodIssueCode.custom,
223
+ path: ["requires", "ledger_tag"],
224
+ message: `requires.ledger_tag references \${${v}} but no matching trigger.extract entry was declared`,
225
+ });
226
+ }
227
+ }
158
228
  }
159
229
  if (policy.producers !== undefined) {
160
230
  const hasMcp = policy.producers.some((p) => p.kind === "mcp");
@@ -1 +1 @@
1
- {"version":3,"file":"policies.js","sourceRoot":"","sources":["../../src/schema/policies.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"policies.js","sourceRoot":"","sources":["../../src/schema/policies.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lannguyensi/harness",
3
- "version": "0.40.0",
3
+ "version": "0.41.0",
4
4
  "description": "Declarative control plane for agent harnesses — one YAML for grounding, tools, memory, and hooks.",
5
5
  "license": "MIT",
6
6
  "homepage": "https://github.com/LanNguyenSi/harness",