@lannguyensi/harness 0.48.0 → 0.50.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 (93) hide show
  1. package/CHANGELOG.md +825 -0
  2. package/dist/cli/add/index.js +15 -3
  3. package/dist/cli/add/index.js.map +1 -1
  4. package/dist/cli/apply/apply.js +19 -3
  5. package/dist/cli/apply/apply.js.map +1 -1
  6. package/dist/cli/approve/risk.d.ts +28 -2
  7. package/dist/cli/approve/risk.js +14 -4
  8. package/dist/cli/approve/risk.js.map +1 -1
  9. package/dist/cli/diff/index.js +22 -1
  10. package/dist/cli/diff/index.js.map +1 -1
  11. package/dist/cli/doctor/format.js +29 -2
  12. package/dist/cli/doctor/format.js.map +1 -1
  13. package/dist/cli/doctor/index.js +62 -3
  14. package/dist/cli/doctor/index.js.map +1 -1
  15. package/dist/cli/doctor/types.d.ts +57 -0
  16. package/dist/cli/explain-policy.d.ts +4 -1
  17. package/dist/cli/explain-policy.js +12 -2
  18. package/dist/cli/explain-policy.js.map +1 -1
  19. package/dist/cli/export.js +12 -1
  20. package/dist/cli/export.js.map +1 -1
  21. package/dist/cli/index.js +29 -7
  22. package/dist/cli/index.js.map +1 -1
  23. package/dist/cli/init/templates.d.ts +34 -1
  24. package/dist/cli/init/templates.js +137 -3
  25. package/dist/cli/init/templates.js.map +1 -1
  26. package/dist/cli/list.js +6 -0
  27. package/dist/cli/list.js.map +1 -1
  28. package/dist/cli/loader.js +15 -0
  29. package/dist/cli/loader.js.map +1 -1
  30. package/dist/cli/pack/hook-codex-pre-tool-use.js +11 -6
  31. package/dist/cli/pack/hook-codex-pre-tool-use.js.map +1 -1
  32. package/dist/cli/pack/hook-post-tool-use.d.ts +6 -4
  33. package/dist/cli/pack/hook-post-tool-use.js.map +1 -1
  34. package/dist/cli/pack/hook-pre-tool-use.js +23 -22
  35. package/dist/cli/pack/hook-pre-tool-use.js.map +1 -1
  36. package/dist/cli/policy/intercept.js +59 -9
  37. package/dist/cli/policy/intercept.js.map +1 -1
  38. package/dist/cli/remove/index.d.ts +12 -0
  39. package/dist/cli/remove/index.js +89 -0
  40. package/dist/cli/remove/index.js.map +1 -1
  41. package/dist/cli/validate/checks.d.ts +49 -0
  42. package/dist/cli/validate/checks.js +416 -9
  43. package/dist/cli/validate/checks.js.map +1 -1
  44. package/dist/cli/validate/index.js +11 -0
  45. package/dist/cli/validate/index.js.map +1 -1
  46. package/dist/policy-packs/builtin/understanding-before-execution/index.d.ts +2 -2
  47. package/dist/policy-packs/builtin/understanding-before-execution/index.js +33 -27
  48. package/dist/policy-packs/builtin/understanding-before-execution/index.js.map +1 -1
  49. package/dist/policy-packs/builtin/understanding-before-execution/markers.js +2 -2
  50. package/dist/policy-packs/builtin/understanding-before-execution/markers.js.map +1 -1
  51. package/dist/policy-packs/builtin/understanding-before-execution/persisted-reports.d.ts +46 -8
  52. package/dist/policy-packs/builtin/understanding-before-execution/persisted-reports.js +71 -12
  53. package/dist/policy-packs/builtin/understanding-before-execution/persisted-reports.js.map +1 -1
  54. package/dist/policy-packs/builtin/understanding-before-execution/post-tool-use-boundary.js +6 -3
  55. package/dist/policy-packs/builtin/understanding-before-execution/post-tool-use-boundary.js.map +1 -1
  56. package/dist/policy-packs/builtin/understanding-before-execution.js +9 -8
  57. package/dist/policy-packs/builtin/understanding-before-execution.js.map +1 -1
  58. package/dist/runtime/bash-prefix-parse.d.ts +12 -1
  59. package/dist/runtime/bash-prefix-parse.js +2 -2
  60. package/dist/runtime/bash-prefix-parse.js.map +1 -1
  61. package/dist/runtime/command-normalize.d.ts +112 -0
  62. package/dist/runtime/command-normalize.js +169 -55
  63. package/dist/runtime/command-normalize.js.map +1 -1
  64. package/dist/runtime/deletion-target-resolve.d.ts +28 -0
  65. package/dist/runtime/deletion-target-resolve.js +1055 -0
  66. package/dist/runtime/deletion-target-resolve.js.map +1 -0
  67. package/dist/runtime/index.d.ts +1 -0
  68. package/dist/runtime/index.js +1 -0
  69. package/dist/runtime/index.js.map +1 -1
  70. package/dist/runtime/intercept.js +17 -1
  71. package/dist/runtime/intercept.js.map +1 -1
  72. package/dist/runtime/kubectl-target-parse.d.ts +31 -0
  73. package/dist/runtime/kubectl-target-parse.js +249 -0
  74. package/dist/runtime/kubectl-target-parse.js.map +1 -0
  75. package/dist/runtime/read-only-bash.d.ts +11 -0
  76. package/dist/runtime/read-only-bash.js +288 -7
  77. package/dist/runtime/read-only-bash.js.map +1 -1
  78. package/dist/runtime/risk-classifier.js +14 -1
  79. package/dist/runtime/risk-classifier.js.map +1 -1
  80. package/dist/runtime/when-eval.d.ts +11 -2
  81. package/dist/runtime/when-eval.js +25 -0
  82. package/dist/runtime/when-eval.js.map +1 -1
  83. package/dist/runtime/workflow-policies.d.ts +164 -0
  84. package/dist/runtime/workflow-policies.js +439 -0
  85. package/dist/runtime/workflow-policies.js.map +1 -0
  86. package/dist/schema/index.d.ts +24 -0
  87. package/dist/schema/policies.d.ts +25 -0
  88. package/dist/schema/policies.js +29 -0
  89. package/dist/schema/policies.js.map +1 -1
  90. package/dist/schema/risk.d.ts +6 -0
  91. package/dist/schema/risk.js +80 -0
  92. package/dist/schema/risk.js.map +1 -1
  93. package/package.json +1 -1
@@ -13,7 +13,8 @@ import { checkPolicyPackConfigs } from "../../policy-packs/config-check.js";
13
13
  import { checkPolicyPackVersions } from "../../policy-packs/version-check.js";
14
14
  import { checkPolicyPackUxDrift } from "../../policy-packs/ux-drift-check.js";
15
15
  import { DEFAULT_RUNTIME } from "../../policy-packs/runtime.js";
16
- import { checkHookBudgetLedgerMargin, checkPolicyRiskWithoutEnvScope, checkSolutionAcceptanceKnobIgnored, checkSolutionAcceptanceProducer, checkTemplatePolicyDrift, createDefaultGitIgnoreProbe, } from "../validate/checks.js";
16
+ import { checkHookBudgetLedgerMargin, checkPolicyRiskWithoutEnvScope, checkSolutionAcceptanceKnobIgnored, checkSolutionAcceptanceProducer, checkTemplatePolicyDrift, checkTriggerBoundaryDrift, checkWorkflows, createDefaultGitIgnoreProbe, } from "../validate/checks.js";
17
+ import { isDerivedPolicy } from "../../runtime/workflow-policies.js";
17
18
  import { loadManifest } from "../loader.js";
18
19
  import { countCodexDiagnostics, findOnPath, runCodexTargetChecks, } from "./codex.js";
19
20
  import { countOpencodeDiagnostics, runOpencodeTargetChecks, } from "./opencode.js";
@@ -460,6 +461,13 @@ function buildPolicies(manifest) {
460
461
  name: p.name,
461
462
  schemaValid: true,
462
463
  caveat: "schema valid; last-evaluated tracking ships in Phase 4",
464
+ // F7 (review round 2): mark provenance so the rendered list can
465
+ // append "(derived from workflows[])" instead of listing a
466
+ // workflow-derived policy indistinguishably from a hand-authored
467
+ // one. `doctor` loads via `loadManifest`, which now folds derived
468
+ // policies in via `withDerivedPolicies` (F2), so this manifest's
469
+ // `policies[]` already contains them.
470
+ ...(isDerivedPolicy(p) ? { derived: true } : {}),
463
471
  };
464
472
  // Producer-gap check (task ce50df99): a `block` policy whose
465
473
  // required tag carries a `within` freshness window cannot stay
@@ -593,10 +601,20 @@ function buildWorkflows(manifest) {
593
601
  taskLabels: wf.when.task_label ?? [],
594
602
  };
595
603
  });
604
+ // F3 (review round 2, 99f47307 Slice 1): doctor previously imported
605
+ // validate's workflow-gate check nowhere, so a spawn: "required"
606
+ // workflow with the merge gate unwired (or wired to the wrong hook
607
+ // trigger, F5) showed green here even though `harness validate` errors
608
+ // on it. Delegates to the shared `checkWorkflows` aggregate (review
609
+ // round 3: the one list validate runs too, so the two cannot drift
610
+ // again), mirroring `buildTemplateDrift` / `buildTriggerBoundaryDrift`.
611
+ const workflowChecks = partitionDiagnosticsBySeverity(checkWorkflows(manifest));
596
612
  return {
597
613
  declared: manifest.workflows.length,
598
614
  templates: Object.keys(manifest.review_templates).length,
599
615
  entries,
616
+ errors: workflowChecks.errors,
617
+ warnings: workflowChecks.warnings,
600
618
  };
601
619
  }
602
620
  /**
@@ -641,13 +659,37 @@ function buildRiskGate(manifest) {
641
659
  * dogfood/CI run should fail until the manifest is caught up or the name
642
660
  * is explicitly acknowledged under doctor.ignore_template_drift.
643
661
  */
644
- function buildTemplateDrift(manifest) {
645
- const diags = checkTemplatePolicyDrift(manifest);
662
+ /**
663
+ * Splits a `Diagnostic[]` into the `{ errors, warnings }` message-array
664
+ * shape every drift-style doctor section uses (task 037cfb7c review round
665
+ * 3: `buildTemplateDrift` and `buildTriggerBoundaryDrift` had become
666
+ * byte-identical bodies around two different `checkX(manifest)` calls;
667
+ * this is the one place that split lives now).
668
+ */
669
+ function partitionDiagnosticsBySeverity(diags) {
646
670
  return {
647
671
  errors: diags.filter((d) => d.severity === "error").map((d) => d.message),
648
672
  warnings: diags.filter((d) => d.severity === "warning").map((d) => d.message),
649
673
  };
650
674
  }
675
+ function buildTemplateDrift(manifest) {
676
+ return partitionDiagnosticsBySeverity(checkTemplatePolicyDrift(manifest));
677
+ }
678
+ /**
679
+ * Trigger-boundary drift (task 037cfb7c): shipped-by-name `bash_match`
680
+ * triggers (hook- and policy-level) missing a boundary alternative the
681
+ * template has, or missing a boundary group entirely. Doctor-only, like
682
+ * `checkTemplatePolicyDrift` immediately above: `checkTriggerBoundaryDrift`
683
+ * is deliberately not wired into validate's `runAssetChecks`, so
684
+ * `harness validate` does not run it (only `harness doctor` does). Uses
685
+ * the same `partitionDiagnosticsBySeverity` split as `buildTemplateDrift`
686
+ * above: `checkTriggerBoundaryDrift` only emits `error`-severity
687
+ * diagnostics today, but a future non-`error` diagnostic now surfaces in
688
+ * `warnings` instead of being silently dropped.
689
+ */
690
+ function buildTriggerBoundaryDrift(manifest) {
691
+ return partitionDiagnosticsBySeverity(checkTriggerBoundaryDrift(manifest));
692
+ }
651
693
  /**
652
694
  * Hook-budget-vs-ledger-timeout margin (task d20a7e0c). Delegates to the
653
695
  * shared validate check so `harness doctor` and `harness validate` stay
@@ -798,11 +840,26 @@ function countDiagnostics(report) {
798
840
  warningCount++;
799
841
  }
800
842
  warningCount += report.riskGate.warnings.length;
843
+ // Workflow gate wiring (F3) + weak-overlap (F1), review round 2,
844
+ // 99f47307 Slice 1: an unwired/mis-wired merge gate is a real
845
+ // silent-non-enforcement gap → errorCount; a weaker hand-authored
846
+ // policy sharing the derived gate's surface is informational →
847
+ // warningCount.
848
+ errorCount += report.workflows.errors.length;
849
+ warningCount += report.workflows.warnings.length;
801
850
  // Template-policy drift: each missing-or-downgraded shipped operator_only
802
851
  // security policy is a real defense gap → errorCount; stale opt-out
803
852
  // entries are warn-only (task adf037c1).
804
853
  errorCount += report.templateDrift.errors.length;
805
854
  warningCount += report.templateDrift.warnings.length;
855
+ // Trigger-boundary drift (task 037cfb7c): every entry is a measured,
856
+ // exploitable gate bypass (see checkTriggerBoundaryDrift's header),
857
+ // mapped to errorCount, mirroring templateDrift.errors immediately
858
+ // above; warnings mirrors templateDrift.warnings the same way (no
859
+ // warning-severity diagnostic exists today, but the pathway is wired
860
+ // so one would count instead of vanishing).
861
+ errorCount += report.triggerBoundaryDrift.errors.length;
862
+ warningCount += report.triggerBoundaryDrift.warnings.length;
806
863
  // Hook-budget-vs-ledger-timeout margin (task d20a7e0c): every entry is
807
864
  // a real fail-open gap, mirroring templateDrift.errors immediately
808
865
  // above.
@@ -930,6 +987,7 @@ export async function doctor(opts = {}) {
930
987
  const workflows = buildWorkflows(manifest);
931
988
  const riskGate = buildRiskGate(manifest);
932
989
  const templateDrift = buildTemplateDrift(manifest);
990
+ const triggerBoundaryDrift = buildTriggerBoundaryDrift(manifest);
933
991
  const hookBudgetLedgerMargin = buildHookBudgetLedgerMargin(manifest);
934
992
  const groundingServer = manifest.tools.mcp.find((m) => m.name === GROUNDING_MCP_SERVER_NAME && m.enabled !== false) ?? null;
935
993
  const grounding = groundingServer !== null
@@ -994,6 +1052,7 @@ export async function doctor(opts = {}) {
994
1052
  workflows,
995
1053
  riskGate,
996
1054
  templateDrift,
1055
+ triggerBoundaryDrift,
997
1056
  hookBudgetLedgerMargin,
998
1057
  ...(grounding !== undefined ? { grounding } : {}),
999
1058
  ...(claudeMcp !== undefined ? { claudeMcp } : {}),
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cli/doctor/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cli/doctor/index.ts"],"names":[],"mappings":"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"}
@@ -114,6 +114,14 @@ export interface PolicyEntryReport {
114
114
  caveat: string;
115
115
  /** Present when this policy has an unproduced freshness-gated tag. */
116
116
  producerGap?: PolicyProducerGap;
117
+ /**
118
+ * True when this policy object was derived from `workflows[]`
119
+ * (`isDerivedPolicy`, F7, review round 2) rather than hand-authored
120
+ * under `policies:`. Rendered as "(derived from workflows[])" so an
121
+ * operator reading `harness doctor` output can tell provenance apart
122
+ * without cross-referencing `workflows:` themselves.
123
+ */
124
+ derived?: boolean;
117
125
  }
118
126
  /**
119
127
  * A declared policy pack whose `source` or builtin name does not
@@ -229,6 +237,24 @@ export interface WorkflowsSectionReport {
229
237
  declared: number;
230
238
  templates: number;
231
239
  entries: WorkflowEntryReport[];
240
+ /**
241
+ * `checkWorkflowGateWiring` errors (F3, review round 2, 99f47307 Slice
242
+ * 1): a `spawn: "required"` review-then-merge workflow whose runtime
243
+ * merge gate is not correctly wired (a missing evidence hook, or one
244
+ * declared under the right name but the wrong trigger surface/command).
245
+ * `harness doctor` previously imported checks selectively and never ran
246
+ * this one, so it showed green on exactly this misconfiguration.
247
+ * Delegates to the shared validate check, mirroring `templateDrift`.
248
+ * Each rolls into `errorCount`.
249
+ */
250
+ errors: string[];
251
+ /**
252
+ * `checkWorkflowGateWeakOverlap` warnings (F1, review round 2): a
253
+ * hand-authored policy sharing a derived gate's trigger surface but
254
+ * weaker than it (does not suppress the derived gate, just worth
255
+ * flagging). Each rolls into `warningCount`.
256
+ */
257
+ warnings: string[];
232
258
  }
233
259
  /**
234
260
  * Phase 7 #6 — Risk Gate wiring health. Reports whether the three Risk
@@ -288,6 +314,30 @@ export interface TemplateDriftSection {
288
314
  /** Stale/typo'd ignore_template_drift entries that suppress nothing (each → warningCount). */
289
315
  warnings: string[];
290
316
  }
317
+ /**
318
+ * Trigger-boundary drift (task 037cfb7c, follow-up to adf037c1):
319
+ * shipped-by-name `bash_match` triggers (hook-level `hooks[].bash_match`
320
+ * or policy-level `policies[].trigger.bash_match`) missing a boundary
321
+ * alternative the template has, or missing a boundary group entirely.
322
+ * Rule and rationale live on `checkTriggerBoundaryDrift` in
323
+ * `validate/checks.ts`; the measured incident that motivated this check
324
+ * is in CHANGELOG.md's [Unreleased] entry for task 037cfb7c. Shape
325
+ * mirrors `TemplateDriftSection` immediately above: every `error`
326
+ * diagnostic rolls into `errorCount`, every `warning` diagnostic (none
327
+ * emitted today; the field exists so a future non-error diagnostic from
328
+ * `checkTriggerBoundaryDrift` surfaces here instead of being silently
329
+ * dropped by `buildTriggerBoundaryDrift`) rolls into `warningCount`.
330
+ * Always present; both arrays empty when every shipped-named trigger's
331
+ * boundary covers the template's (or the manifest has none of those
332
+ * triggers, or every drift is acknowledged via
333
+ * doctor.ignore_template_drift).
334
+ */
335
+ export interface TriggerBoundaryDriftSection {
336
+ /** Stale-boundary bash_match triggers, hook- or policy-level (each → errorCount). */
337
+ errors: string[];
338
+ /** Reserved for a future non-error diagnostic shape (each → warningCount); empty today. */
339
+ warnings: string[];
340
+ }
291
341
  /**
292
342
  * Hook-budget-vs-ledger-timeout margin (task d20a7e0c, follow-up to
293
343
  * f1aea826/7bf47554): blocking, ledger-consulting hooks (both directly
@@ -360,6 +410,13 @@ export interface DoctorReport {
360
410
  * via a valid doctor.ignore_template_drift entry).
361
411
  */
362
412
  templateDrift: TemplateDriftSection;
413
+ /**
414
+ * Trigger-boundary drift (task 037cfb7c). Always present; `errors`
415
+ * empty when every shipped-named `bash_match` trigger's boundary
416
+ * matches the template (or every drift is acknowledged via
417
+ * doctor.ignore_template_drift).
418
+ */
419
+ triggerBoundaryDrift: TriggerBoundaryDriftSection;
363
420
  /**
364
421
  * Hook-budget-vs-ledger-timeout margin (task d20a7e0c). Always
365
422
  * present; `errors` empty when every blocking, ledger-consulting hook
@@ -1,4 +1,4 @@
1
- import { type EnvironmentResolution, type RiskProfile, type WhenClauseResult } from "../runtime/index.js";
1
+ import { type DeletionTargetVerdict, type EnvironmentResolution, type RiskProfile, type WhenClauseResult } from "../runtime/index.js";
2
2
  import type { Manifest } from "../schema/index.js";
3
3
  import { type EventInputSeams } from "./event-input.js";
4
4
  import { type LoaderOptions } from "./loader.js";
@@ -28,6 +28,9 @@ interface ExplainPolicyProjection {
28
28
  };
29
29
  classifier: RiskProfile;
30
30
  environment: EnvironmentResolution;
31
+ /** Static deletion-target verdict (task d03af8f6); null when the
32
+ * event's command is not a recognized deletion verb. */
33
+ deletion_target: DeletionTargetVerdict | null;
31
34
  when: {
32
35
  declared: false;
33
36
  } | {
@@ -13,7 +13,9 @@
13
13
  // LAST recorded decision from the evidence ledger; `explain-policy`
14
14
  // evaluates a hypothetical event live and reads nothing from the ledger.
15
15
  import { stringify as stringifyYaml } from "yaml";
16
- import { classifyRisk, evaluateWhen, policyMatchesEvent, resolveEnvironment, resolveKubeContext, } from "../runtime/index.js";
16
+ import { classifyRisk, evaluateWhen, policyMatchesEvent, resolveDeletionTarget, resolveEnvironment, resolveKubeContext, } from "../runtime/index.js";
17
+ import { extractShellCommand } from "../runtime/tool-name-aliases.js";
18
+ import { DEFAULT_SAFE_DELETION_ROOTS } from "../schema/risk.js";
17
19
  import { loadEventEnvelope } from "./event-input.js";
18
20
  import { EX_USAGE, HarnessExitError } from "./exit-codes.js";
19
21
  import { loadManifest } from "./loader.js";
@@ -43,9 +45,16 @@ export function explainPolicy(policyName, opts) {
43
45
  kubeContext: kube.context,
44
46
  kubeNamespace: kube.namespace,
45
47
  });
48
+ // Static deletion-target resolution (task d03af8f6) — same "raw
49
+ // command only, no ambient cwd/env" contract as the runtime's own
50
+ // `enrichEnvelope`. See `deletion-target-resolve.ts`.
51
+ const explainShellCommand = extractShellCommand({ raw_input: envelope.raw_input });
52
+ const deletionTarget = explainShellCommand === null
53
+ ? null
54
+ : resolveDeletionTarget(explainShellCommand, manifest.risk.safe_deletion_roots ?? DEFAULT_SAFE_DELETION_ROOTS);
46
55
  const triggerMatched = policyMatchesEvent(policy, event);
47
56
  const whenEval = policy.when !== undefined
48
- ? evaluateWhen(policy.when, { risk: classifier, environment })
57
+ ? evaluateWhen(policy.when, { risk: classifier, environment, deletionTarget })
49
58
  : undefined;
50
59
  const projection = {
51
60
  policy: policy.name,
@@ -63,6 +72,7 @@ export function explainPolicy(policyName, opts) {
63
72
  },
64
73
  classifier,
65
74
  environment,
75
+ deletion_target: deletionTarget,
66
76
  when: whenEval
67
77
  ? {
68
78
  declared: true,
@@ -1 +1 @@
1
- {"version":3,"file":"explain-policy.js","sourceRoot":"","sources":["../../src/cli/explain-policy.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"explain-policy.js","sourceRoot":"","sources":["../../src/cli/explain-policy.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,7 @@ import * as os from "node:os";
2
2
  import * as path from "node:path";
3
3
  import { stringify as stringifyYaml } from "yaml";
4
4
  import { atomicWriteFile } from "../io/atomic-write.js";
5
+ import { withoutDerivedPolicies } from "../runtime/workflow-policies.js";
5
6
  import { loadManifest } from "./loader.js";
6
7
  const SECRET_KEY_PATTERN = /(?:_|^)(KEY|TOKEN|SECRET|PASSWORD|API_KEY)$/i;
7
8
  const REDACTED = "<REDACTED>";
@@ -10,7 +11,17 @@ export const SANITIZE_FOOTER = "# sanitised: /home/<user>/ paths replaced with ~
10
11
  "sanitiser does NOT touch secrets in command:[] arrays or in policy " +
11
12
  "`requires.ledger_tag` values; review before sharing.";
12
13
  export function exportManifest(opts = {}) {
13
- const { manifest } = loadManifest(opts);
14
+ const { manifest: loaded } = loadManifest(opts);
15
+ // F7 (review round 2, 99f47307 Slice 1): `loadManifest` folds
16
+ // `workflows[]`-derived policies into `manifest.policies` (F2), but
17
+ // `harness export` is meant to emit what the OPERATOR declared, not a
18
+ // computed view — a derived policy re-imported via `harness init
19
+ // --config <exported file>`-style workflows would then be a
20
+ // hand-authored duplicate of something the next `harness apply` would
21
+ // derive again anyway. `withoutDerivedPolicies` (identity-based; see
22
+ // workflow-policies.ts) restores the hand-authored view before
23
+ // projecting; `harness list policies` / `doctor` show the derived pair.
24
+ const manifest = withoutDerivedPolicies(loaded);
14
25
  const projection = manifest;
15
26
  const projected = opts.sanitize ? sanitize(projection, os.homedir()) : projection;
16
27
  let output;
@@ -1 +1 @@
1
- {"version":3,"file":"export.js","sourceRoot":"","sources":["../../src/cli/export.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"export.js","sourceRoot":"","sources":["../../src/cli/export.ts"],"names":[],"mappings":"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"}
package/dist/cli/index.js CHANGED
@@ -749,6 +749,17 @@ export function buildProgram(opts = {}) {
749
749
  if (result.forcedReferences.length > 0) {
750
750
  stderr(`(forced removal — referenced by: ${result.forcedReferences.join(", ")})\n`);
751
751
  }
752
+ // F3 (review round 3, 99f47307 Slice 1): printed on the dry-run AND
753
+ // the write path. A --force'd removal of an evidence hook silently
754
+ // disables the workflows[]-derived merge gate (no schema safety
755
+ // net, unlike a dangling policy.hook), so this line is the only
756
+ // warning the operator gets.
757
+ if (result.derivedGateReferences.length > 0) {
758
+ stderr(`(forced removal disables the workflows[]-derived merge gate for: ` +
759
+ `${result.derivedGateReferences.join(", ")}; harness policy intercept ` +
760
+ `no longer blocks merges for ${result.derivedGateReferences.length === 1 ? "this workflow" : "these workflows"} ` +
761
+ `and for any other workflow sharing the same merge surface)\n`);
762
+ }
752
763
  if (options.dryRun) {
753
764
  stdout(result.diff);
754
765
  return;
@@ -840,14 +851,15 @@ export function buildProgram(opts = {}) {
840
851
  });
841
852
  // `harness pack hook` runtime sub-tree (Phase 6 #4): wired by the
842
853
  // pack's PreToolUse hook contribution; reads PreToolUse JSON from
843
- // stdin, consults ledger + persisted-report, emits Claude Code deny
844
- // JSON on block.
854
+ // stdin, consults the signed approval marker (the persisted report and
855
+ // the ledger are audit evidence only, task 7402301d), emits Claude Code
856
+ // deny JSON on block.
845
857
  const packHookCmd = packCmd
846
858
  .command("hook")
847
859
  .description("Pack runtime hook entrypoints (called by Claude Code via settings.json)");
848
860
  packHookCmd
849
861
  .command("pre-tool-use")
850
- .description("PreToolUse blocker: read tool-event JSON from stdin, consult ledger + persisted report, emit deny JSON on block")
862
+ .description("PreToolUse blocker: read tool-event JSON from stdin, consult the signed approval marker (persisted report and ledger are audit evidence only), emit deny JSON on block")
851
863
  .option("--config <path>", "manifest path (default: ~/.harness/harness.yaml; legacy fallback ~/.claude/harness.yaml)")
852
864
  .option("--project <name>", "apply per-project overrides")
853
865
  .option("--pack <name>", "pack name to evaluate (default: understanding-before-execution)")
@@ -920,7 +932,7 @@ export function buildProgram(opts = {}) {
920
932
  // on stdout for Codex to prepend to additional_instructions.
921
933
  packHookCmd
922
934
  .command("codex-pre-tool-use")
923
- .description("Codex PreToolUse blocker: read tool-event JSON from stdin, consult ledger + persisted report, exit 2 with stderr reason on block")
935
+ .description("Codex PreToolUse blocker: read tool-event JSON from stdin, consult the signed approval marker (persisted report and ledger are audit evidence only), exit 2 with stderr reason on block")
924
936
  .option("--config <path>", "manifest path (default: ~/.harness/harness.yaml; legacy fallback ~/.claude/harness.yaml)")
925
937
  .option("--project <name>", "apply per-project overrides")
926
938
  .option("--pack <name>", "pack name to evaluate (default: understanding-before-execution)")
@@ -1173,7 +1185,8 @@ export function buildProgram(opts = {}) {
1173
1185
  approveCmd
1174
1186
  .command("understanding")
1175
1187
  .description("Mark the latest Understanding Report as approved AND write the evidence-ledger tag. " +
1176
- "Round-trips both sources so harnessed and solo (@lannguyensi/understanding-gate) stacks stay in sync.")
1188
+ "Writes the signed approval marker and round-trips the audit records (persisted report, ledger row) " +
1189
+ "so harnessed and solo (@lannguyensi/understanding-gate) stacks stay in sync.")
1177
1190
  .option("--config <path>", "manifest path (default: ~/.harness/harness.yaml; legacy fallback ~/.claude/harness.yaml)")
1178
1191
  .option("--project <name>", "apply per-project overrides")
1179
1192
  .option("--session <id>", "explicit session id (default: $CLAUDE_CODE_SESSION_ID, then $CLAUDE_SESSION_ID, then $CODEX_SESSION_ID, then staged .pending-approval, then newest pending Understanding Report)")
@@ -1374,12 +1387,15 @@ export function buildProgram(opts = {}) {
1374
1387
  .command("risk")
1375
1388
  .description("Grant a Risk Gate require_approval decision (default), or deliberately override " +
1376
1389
  "a deny-tier block with --force <reason>. The default path writes the " +
1377
- "risk-approved:${SESSION_ID} ledger tag the require_approval policy's requires " +
1378
- "consults; --force writes risk-override:${SESSION_ID}:forced:<reason> for the " +
1390
+ "risk-approved:${SESSION_ID} ledger tag the production-scoped require_approval " +
1391
+ "policy's requires consults; --scope deletion writes " +
1392
+ "risk-approved:deletion:${SESSION_ID} instead, for the dev-context deletion arm " +
1393
+ "only; --force writes risk-override:${SESSION_ID}:forced:<reason> for the " +
1379
1394
  "deny-tier policy. Operator action.")
1380
1395
  .option("--config <path>", "manifest path (default: ~/.harness/harness.yaml; legacy fallback ~/.claude/harness.yaml)")
1381
1396
  .option("--project <name>", "apply per-project overrides")
1382
1397
  .option("--session <id>", "explicit session id (default: $CLAUDE_CODE_SESSION_ID, then $CLAUDE_SESSION_ID, then $CODEX_SESSION_ID, then staged .pending-approval)")
1398
+ .option("--scope <scope>", "restrict the ledger tag to one Risk Gate arm instead of the shared production tag; only 'deletion' is recognized (writes risk-approved:deletion:${SESSION_ID} for gate-dev-unsafe-deletion). Omit for the default production-scoped tag. Ignored with --force.")
1383
1399
  .option("--force <reason>", "operator-deliberate override of a deny-tier Risk Gate block; writes the risk-override tag with the reason stamped into the audit trail")
1384
1400
  .option("--i-am-the-operator", "acknowledge a scripted / non-TTY --force invocation (otherwise refused)")
1385
1401
  .action(async (options) => {
@@ -1390,6 +1406,12 @@ export function buildProgram(opts = {}) {
1390
1406
  cliOpts.project = options.project;
1391
1407
  if (options.session)
1392
1408
  cliOpts.session = options.session;
1409
+ if (options.scope !== undefined) {
1410
+ if (options.scope !== "deletion") {
1411
+ throw new HarnessExitError(`--scope "${options.scope}" is not recognized; the only supported value is "deletion".`, EX_USAGE);
1412
+ }
1413
+ cliOpts.scope = "deletion";
1414
+ }
1393
1415
  if (typeof options.force === "string") {
1394
1416
  const reason = options.force.trim();
1395
1417
  if (reason.length === 0) {