paqad-ai 1.58.0 → 1.59.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,13 @@
1
1
  # paqad-ai
2
2
 
3
+ ## 1.59.0
4
+
5
+ ### Minor Changes
6
+
7
+ - deb1cb9: Make the end-of-change verdict visible, honest, and enforced (#368). The completion backstop now surfaces the one end-of-change receipt to the developer whether the verdict passes, fails, or is inconclusive — a failing "Needs your attention" verdict can no longer be hidden on stderr while a PR ships. A hard-failing feature-development change now blocks the turn at the Stop seam via the documented `decision:block` channel (exit 2 is a no-op there), bounded by the stop-hook loop guard. A feature-development change with no real `paqad-ai checks run` report reads as Inconclusive and shows its `checks` stage as unverified rather than done. The `checks.block_on_failure` escalation stays script-enforced; `review_findings` / `stale_docs` are documented as agent-raised and Decision-Pause-enforced rather than falsely claiming script enforcement. The cross-provider verdict tiering (hook-surfaced on Claude, agent-narrated on Codex/Gemini/advisory) is documented so the promise is truthful per host.
8
+
9
+ Also (AC-D2, from the second reproduction on the #355 session): the evidence receipt's `verification_result` is now three-way — `FAILED` only on a genuine failure, `INCONCLUSIVE` when a measure could not run (a `blocked` ratchet from unwired/absent tooling) or could not be judged, and `PASSED` when every row passed. A couldn't-verify is no longer reported as a failure, so an unwired quality-ratchet measure can no longer manufacture a false `FAILED` on the attestation.
10
+
3
11
  ## 1.58.0
4
12
 
5
13
  ### Minor Changes
package/dist/cli/index.js CHANGED
@@ -8443,6 +8443,17 @@ function renderDefaultFeatureDevelopmentPolicyYaml() {
8443
8443
  return `# Feature Development Stage Policy
8444
8444
  # This file customizes how the built-in feature-development workflow behaves in this project.
8445
8445
  # The framework still owns routing, phase order, and mandatory safety stages.
8446
+ #
8447
+ # Enforcement tiers (issue #368) \u2014 an escalation is honoured on one of two tiers, and
8448
+ # this contract never claims script enforcement it does not have:
8449
+ # - SCRIPT-ENFORCED (deterministic): checks.block_on_failure and the mandatory-stage
8450
+ # completeness gate. \`paqad-ai checks run\` exits non-zero on any red command and the
8451
+ # completion backstop reads its report; a feature-dev change with no report reads
8452
+ # Inconclusive, never a vacuous pass.
8453
+ # - AGENT-RAISED -> DECISION-PAUSE-ENFORCED: review.escalation.review_findings and
8454
+ # documentation_sync.escalation.stale_docs need model judgment to raise, so no script
8455
+ # detects them; once raised as a \`stop\`, the Decision-Pause gate holds edits until the
8456
+ # packet resolves. Not a false "a script proves this" promise.
8446
8457
  schema_version: "1"
8447
8458
  merge_mode: append
8448
8459
 
@@ -30327,7 +30338,7 @@ init_cancelled_error();
30327
30338
  init_events();
30328
30339
 
30329
30340
  // src/index.ts
30330
- var VERSION = "1.58.0";
30341
+ var VERSION = "1.59.0";
30331
30342
 
30332
30343
  // src/cli/commands/audit.ts
30333
30344
  init_esm_shims();