@deftai/directive 0.101.0 → 0.103.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.
@@ -84,9 +84,6 @@ export const SUBCOMMAND_ROUTES = {
84
84
  "policy:allow-bot-merge": ["policy", "allow-bot-merge"],
85
85
  "policy:enable-value-feedback": ["policy", "enable-value-feedback"],
86
86
  "policy:set-ceremony-dial": ["policy", "set-ceremony-dial"],
87
- "policy:coverage-check-resume-preset": ["policy", "coverage-check-resume-preset"],
88
- "policy:coverage-check-resume-dismiss": ["policy", "coverage-check-resume-dismiss"],
89
- "policy:coverage-check-resume-later": ["policy", "coverage-check-resume-later"],
90
87
  "policy:clear-value-feedback": ["policy", "clear-value-feedback"],
91
88
  "authz:show": ["authz", "show"],
92
89
  "authz:uat-start": ["authz", "uat-start"],
package/dist/dispatch.js CHANGED
@@ -219,9 +219,6 @@ export const POLICY_ACTION_ALIAS_SUBCOMMANDS = {
219
219
  "policy:enable-value-feedback": "enable-value-feedback",
220
220
  "policy:set-ceremony-dial": "set-ceremony-dial",
221
221
  "policy:clear-value-feedback": "clear-value-feedback",
222
- "policy:coverage-check-resume-preset": "coverage-check-resume-preset",
223
- "policy:coverage-check-resume-dismiss": "coverage-check-resume-dismiss",
224
- "policy:coverage-check-resume-later": "coverage-check-resume-later",
225
222
  "policy:disable-directive": "disable-directive",
226
223
  "policy:enable-directive": "enable-directive",
227
224
  };
package/dist/policy.d.ts CHANGED
@@ -8,7 +8,7 @@ interface ShowArgs {
8
8
  error?: string;
9
9
  }
10
10
  interface SetArgs {
11
- cmd: "show" | "enforce-branches" | "allow-direct-commits" | "allow-bot-merge" | "enable-value-feedback" | "clear-value-feedback" | "set-ceremony-dial" | "coverage-check-resume-preset" | "coverage-check-resume-dismiss" | "coverage-check-resume-later" | "disable-directive" | "enable-directive" | "resolve";
11
+ cmd: "show" | "enforce-branches" | "allow-direct-commits" | "allow-bot-merge" | "enable-value-feedback" | "clear-value-feedback" | "set-ceremony-dial" | "disable-directive" | "enable-directive" | "resolve";
12
12
  confirm: boolean;
13
13
  actor: string;
14
14
  note: string;
@@ -16,9 +16,6 @@ interface SetArgs {
16
16
  format: "text" | "json";
17
17
  changedOnly: boolean;
18
18
  field: string | null;
19
- /** Strict | hatch-aware for coverage-check-resume-preset; reason for dismiss. */
20
- preset?: string;
21
- reason?: string;
22
19
  /** #3214 ceremony dial override depth for set-ceremony-dial. */
23
20
  ceremonyOverride?: CeremonyDepth | null;
24
21
  /** #3214 ceremony dial enabled flag for set-ceremony-dial. */
package/dist/policy.js CHANGED
@@ -6,7 +6,7 @@
6
6
  import { existsSync } from "node:fs";
7
7
  import { resolve as pathResolve, relative } from "node:path";
8
8
  import { fileURLToPath } from "node:url";
9
- import { ALLOW_BOT_MERGE_CAPABILITY_COST, applyHatchAwareCoverageCheckResumePreset, applyLaterCoverageCheckResumeSkip, applyStrictCoverageCheckResumePreset, CEREMONY_DEPTHS, clearValueFeedback, createNoDeftDirectiveFlag, describeShadowedPlanExtension, detectNoDeftDirective, detectShadowedPlanExtensions, disclosureLine, dismissCoverageCheckResume, enableValueFeedback, FIELD_VALUE_FEEDBACK, FIELD_VALUE_FEEDBACK_CLI_ALIAS, formatValueFeedbackStatusLine, humanMergeDisclosureLine, inspectAllPolicies, inspectOnePolicy, loadProjectDefinition, NO_DEFT_DIRECTIVE_DISABLED_MESSAGE, NO_DEFT_DIRECTIVE_FLAG_NAME, NO_DEFT_DIRECTIVE_INCONSISTENT_MESSAGE, policyColonInvocation, projectDefinitionPath, pythonListRepr, pythonStringRepr, registeredPolicyNames, removeNoDeftDirectiveFlag, renderJson, renderText, resolveHumanMergePolicy, resolvePolicy, resolveValueFeedback, setCeremonyDial, setPolicy, setRequireHumanMerge, } from "@deftai/directive-core/policy";
9
+ import { ALLOW_BOT_MERGE_CAPABILITY_COST, CEREMONY_DEPTHS, clearValueFeedback, createNoDeftDirectiveFlag, describeShadowedPlanExtension, detectNoDeftDirective, detectShadowedPlanExtensions, disclosureLine, enableValueFeedback, FIELD_VALUE_FEEDBACK, FIELD_VALUE_FEEDBACK_CLI_ALIAS, formatValueFeedbackStatusLine, humanMergeDisclosureLine, inspectAllPolicies, inspectOnePolicy, loadProjectDefinition, NO_DEFT_DIRECTIVE_DISABLED_MESSAGE, NO_DEFT_DIRECTIVE_FLAG_NAME, NO_DEFT_DIRECTIVE_INCONSISTENT_MESSAGE, policyColonInvocation, projectDefinitionPath, pythonListRepr, pythonStringRepr, registeredPolicyNames, removeNoDeftDirectiveFlag, renderJson, renderText, resolveHumanMergePolicy, resolvePolicy, resolveValueFeedback, setCeremonyDial, setPolicy, setRequireHumanMerge, } from "@deftai/directive-core/policy";
10
10
  const CAPABILITY_COST_DISCLOSURE = "\u26a0 Capability-cost disclosure -- enabling direct commits to the default " +
11
11
  "branch turns OFF the deft branch-protection policy.\n" +
12
12
  " \u2022 Pre-commit + pre-push hooks will no longer block default-branch " +
@@ -114,7 +114,7 @@ export function parseShowArgs(argv) {
114
114
  /** Parse argv for the policy CLI (show + set subcommands). */
115
115
  export function parseArgs(argv) {
116
116
  if (argv.length === 0) {
117
- const usage = "usage: policy [show|enforce-branches|allow-direct-commits|allow-bot-merge|enable-value-feedback|clear-value-feedback|set-ceremony-dial|coverage-check-resume-preset|coverage-check-resume-dismiss|coverage-check-resume-later|disable-directive|enable-directive|resolve] ...";
117
+ const usage = "usage: policy [show|enforce-branches|allow-direct-commits|allow-bot-merge|enable-value-feedback|clear-value-feedback|set-ceremony-dial|disable-directive|enable-directive|resolve] ...";
118
118
  return makeSetError(usage);
119
119
  }
120
120
  const cmd = argv[0];
@@ -152,9 +152,6 @@ export function parseArgs(argv) {
152
152
  cmd === "enable-value-feedback" ||
153
153
  cmd === "clear-value-feedback" ||
154
154
  cmd === "set-ceremony-dial" ||
155
- cmd === "coverage-check-resume-preset" ||
156
- cmd === "coverage-check-resume-dismiss" ||
157
- cmd === "coverage-check-resume-later" ||
158
155
  cmd === "disable-directive" ||
159
156
  cmd === "enable-directive") {
160
157
  let confirm = false;
@@ -170,19 +167,11 @@ export function parseArgs(argv) {
170
167
  ? policyColonInvocation("clear-value-feedback")
171
168
  : cmd === "set-ceremony-dial"
172
169
  ? policyColonInvocation("set-ceremony-dial")
173
- : cmd === "coverage-check-resume-preset"
174
- ? policyColonInvocation("coverage-check-resume-preset")
175
- : cmd === "coverage-check-resume-dismiss"
176
- ? policyColonInvocation("coverage-check-resume-dismiss")
177
- : cmd === "coverage-check-resume-later"
178
- ? policyColonInvocation("coverage-check-resume-later")
179
- : cmd === "disable-directive"
180
- ? policyColonInvocation("disable-directive")
181
- : policyColonInvocation("enable-directive");
170
+ : cmd === "disable-directive"
171
+ ? policyColonInvocation("disable-directive")
172
+ : policyColonInvocation("enable-directive");
182
173
  let note = "";
183
174
  let projectRoot = ".";
184
- let preset = "";
185
- let reason = "";
186
175
  let ceremonyOverride;
187
176
  let ceremonyEnabled;
188
177
  for (let i = 1; i < argv.length; i += 1) {
@@ -190,26 +179,6 @@ export function parseArgs(argv) {
190
179
  if (arg === "--confirm") {
191
180
  confirm = true;
192
181
  }
193
- else if (arg === "--preset") {
194
- const v = argv[i + 1];
195
- if (v === undefined)
196
- return makeSetError("argument --preset: expected one argument");
197
- preset = v;
198
- i += 1;
199
- }
200
- else if (arg?.startsWith("--preset=")) {
201
- preset = arg.slice("--preset=".length);
202
- }
203
- else if (arg === "--reason") {
204
- const v = argv[i + 1];
205
- if (v === undefined)
206
- return makeSetError("argument --reason: expected one argument");
207
- reason = v;
208
- i += 1;
209
- }
210
- else if (arg?.startsWith("--reason=")) {
211
- reason = arg.slice("--reason=".length);
212
- }
213
182
  else if (arg === "--actor") {
214
183
  const v = argv[i + 1];
215
184
  if (v === undefined)
@@ -240,10 +209,6 @@ export function parseArgs(argv) {
240
209
  else if (arg?.startsWith("--project-root=")) {
241
210
  projectRoot = arg.slice("--project-root=".length);
242
211
  }
243
- else if (cmd === "coverage-check-resume-preset" &&
244
- (arg === "strict" || arg === "hatch-aware")) {
245
- preset = arg;
246
- }
247
212
  else if (cmd === "set-ceremony-dial" && (arg === "--override" || arg === "--depth")) {
248
213
  const v = argv[i + 1];
249
214
  if (v === undefined) {
@@ -301,8 +266,6 @@ export function parseArgs(argv) {
301
266
  format: "text",
302
267
  changedOnly: false,
303
268
  field: null,
304
- preset,
305
- reason,
306
269
  ceremonyOverride,
307
270
  ceremonyEnabled,
308
271
  };
@@ -547,15 +510,6 @@ export function run(argv) {
547
510
  if (args.cmd === "set-ceremony-dial") {
548
511
  return runSetCeremonyDial(args);
549
512
  }
550
- if (args.cmd === "coverage-check-resume-preset") {
551
- return runCoverageCheckResumePreset(args);
552
- }
553
- if (args.cmd === "coverage-check-resume-dismiss") {
554
- return runCoverageCheckResumeDismiss(args);
555
- }
556
- if (args.cmd === "coverage-check-resume-later") {
557
- return runCoverageCheckResumeLater();
558
- }
559
513
  if (args.cmd === "disable-directive") {
560
514
  return runDisableDirective(args);
561
515
  }
@@ -564,42 +518,6 @@ export function run(argv) {
564
518
  }
565
519
  return 2;
566
520
  }
567
- /** Apply Strict or Hatch-aware coverageDebt+checkResume preset (#3189). */
568
- function runCoverageCheckResumePreset(args) {
569
- const root = pathResolve(args.projectRoot);
570
- const preset = (args.preset ?? "").trim().toLowerCase();
571
- if (preset !== "strict" && preset !== "hatch-aware") {
572
- process.stdout.write("usage: policy coverage-check-resume-preset --preset strict|hatch-aware [--project-root PATH]\n" +
573
- " (or: policy:coverage-check-resume-preset strict|hatch-aware)\n");
574
- return 1;
575
- }
576
- const result = preset === "strict"
577
- ? applyStrictCoverageCheckResumePreset(root, { actor: args.actor, note: args.note })
578
- : applyHatchAwareCoverageCheckResumePreset(root, { actor: args.actor, note: args.note });
579
- process.stdout.write(result.stdout);
580
- return result.exitCode;
581
- }
582
- /** Dismiss-with-reason for coverageDebt+checkResume (#3189). */
583
- function runCoverageCheckResumeDismiss(args) {
584
- const root = pathResolve(args.projectRoot);
585
- const reason = (args.reason ?? "").trim();
586
- if (reason.length === 0) {
587
- process.stdout.write("usage: policy coverage-check-resume-dismiss --reason TEXT [--project-root PATH]\n");
588
- return 1;
589
- }
590
- const result = dismissCoverageCheckResume(root, reason, {
591
- actor: args.actor,
592
- note: args.note,
593
- });
594
- process.stdout.write(result.stdout);
595
- return result.exitCode;
596
- }
597
- /** Later skip — no PROJECT-DEFINITION write (#3189). */
598
- function runCoverageCheckResumeLater() {
599
- const result = applyLaterCoverageCheckResumeSkip();
600
- process.stdout.write(result.stdout);
601
- return result.exitCode;
602
- }
603
521
  /** Persist plan.policy.ceremonyDial override/enabled (#3214). */
604
522
  function runSetCeremonyDial(args) {
605
523
  const root = pathResolve(args.projectRoot);
@@ -341,6 +341,7 @@ export function run(argv) {
341
341
  config: { enabled: true, override: args.ceremonyDepthOverride },
342
342
  inputs: args.ceremonyDialInputs,
343
343
  }),
344
+ ceremonyDialStartTierProvenance: "external-pin",
344
345
  }
345
346
  : {}),
346
347
  });
package/dist/verify-ac.js CHANGED
@@ -114,6 +114,7 @@ function evaluatePaths(paths, options) {
114
114
  quiet: options.quiet,
115
115
  softMissingXbrief: options.softMissingXbrief,
116
116
  checkIntegrated: options.softMissingXbrief,
117
+ env: process.env,
117
118
  });
118
119
  if (result.message.length > 0) {
119
120
  if (result.ok) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@deftai/directive",
3
- "version": "0.101.0",
3
+ "version": "0.103.0",
4
4
  "description": "Directive CLI — npm install path for the Deft Directive framework.",
5
5
  "license": "MIT",
6
6
  "homepage": "https://deftai.github.io/directive/",
@@ -34,8 +34,8 @@
34
34
  "provenance": true
35
35
  },
36
36
  "dependencies": {
37
- "@deftai/directive-core": "^0.101.0",
38
- "@deftai/directive-content": "^0.101.0"
37
+ "@deftai/directive-core": "^0.103.0",
38
+ "@deftai/directive-content": "^0.103.0"
39
39
  },
40
40
  "scripts": {
41
41
  "build": "tsc -b"