paqad-ai 1.42.0 → 1.44.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,30 @@
1
1
  # paqad-ai
2
2
 
3
+ ## 1.44.0
4
+
5
+ ### Minor Changes
6
+
7
+ - 92c5d52: Decision Pause: default `decisions_ask_threshold` to `strict` (humans decide; the machine does not auto-resolve mid-confidence packets).
8
+
9
+ Previously the default was `balanced` (0.85), which let the resolver auto-resolve any decision packet whose recommendation cleared 0.85 confidence. The default is now `strict` (0.95): packets in the 0.85–0.94 confidence band surface to a human instead of resolving silently. Projects that never set the key resolve to `strict`, and fresh `paqad-ai onboard` writes `ask_threshold: strict`.
10
+
11
+ This is a behaviour change on update. Teams that prefer auto-resolution can opt back in by setting `decisions_ask_threshold=balanced` (or `permissive`) in `.paqad/configs/.config.policy` / local `.config`, or via the `PAQAD_DECISIONS_ASK_THRESHOLD` env var. Applies uniformly across all providers (core/config, not entry-file behaviour).
12
+
13
+ ## 1.43.0
14
+
15
+ ### Minor Changes
16
+
17
+ - 3bc15df: Publish two measured, reproducible benchmark numbers with methodology and caveats
18
+ (issue #285). Adds read-only repo tooling: `scripts/measure-footprint.mjs` reports the
19
+ resident session-start token footprint per area (real tokenizer via
20
+ `src/context/tokenizer-cache.ts`, labelled char/4 fallback), and
21
+ `scripts/rule-findings-stats.mjs` reads the existing `rule-evidence` ledger via
22
+ `readProjectEvents` and buckets deterministic findings by ISO week. Results, method, run
23
+ counts, tokenizer version, per-tier applicability, and caveats live in
24
+ `docs/instructions/benchmarks/measured.md`. The two unbenchmarked "60-85%" README claims
25
+ are replaced with the measured 49-61% resident-load reduction and a link to the method.
26
+ No product behavior changes; `rag_enabled` stays default off.
27
+
3
28
  ## 1.42.0
4
29
 
5
30
  ### Minor Changes
package/README.md CHANGED
@@ -52,16 +52,16 @@ No account, no API key, no subscription. Prefer not to install anything? Run `np
52
52
 
53
53
  ## What you get, at a glance
54
54
 
55
- | Area | What it means for you |
56
- | ---------------------------- | -------------------------------------------------------------------------------- |
57
- | **One setup, every tool** | Configure Claude, Cursor, Copilot, Gemini, and the rest from one source of truth |
58
- | **Workflows, not prompts** | Your team's process runs the same way every time, instead of being re-typed |
59
- | **Proof, not promises** | Automatic checks confirm tests, specs, docs, and security before "done" counts |
60
- | **Security as a workflow** | A full OWASP pentest pass, with retests, built in |
61
- | **Design as a workflow** | Your UI audited against your own design system |
62
- | **Docs that stay current** | The framework keeps your documentation in sync with the code |
63
- | **Fewer tokens, on purpose** | Loads the right files, not the whole repo, cutting token use by 60-85% |
64
- | **Runs locally** | Your code stays on your machine, with an audit trail you can keep |
55
+ | Area | What it means for you |
56
+ | ---------------------------- | -------------------------------------------------------------------------------------- |
57
+ | **One setup, every tool** | Configure Claude, Cursor, Copilot, Gemini, and the rest from one source of truth |
58
+ | **Workflows, not prompts** | Your team's process runs the same way every time, instead of being re-typed |
59
+ | **Proof, not promises** | Automatic checks confirm tests, specs, docs, and security before "done" counts |
60
+ | **Security as a workflow** | A full OWASP pentest pass, with retests, built in |
61
+ | **Design as a workflow** | Your UI audited against your own design system |
62
+ | **Docs that stay current** | The framework keeps your documentation in sync with the code |
63
+ | **Fewer tokens, on purpose** | Loads a lean resident slice, not the whole repo. Measured 49-61% smaller resident load |
64
+ | **Runs locally** | Your code stays on your machine, with an audit trail you can keep |
65
65
 
66
66
  The rest of this page walks through each of these. The [full docs](https://paqad.ai/docs.html) go deeper on every command and concept.
67
67
 
@@ -267,7 +267,13 @@ Documentation is a real output here, not an afterthought you maintain by hand. A
267
267
 
268
268
  ## The right context, with fewer tokens
269
269
 
270
- Your agent does not need your whole repo. It needs the right files. And since every model gets worse on a bloated context, loading less is not just cheaper, it makes the answers better. paqad-ai cuts token use by **60-85%** through careful context loading.
270
+ Your agent does not need your whole repo. It needs the right files. And since every model gets worse on a bloated context, loading less is not just cheaper, it makes the answers better.
271
+
272
+ paqad-ai keeps the session-start load lean: a rule manifest plus the files a task actually touches, instead of the whole rule tree. Measured across two projects, that resident load is **49-61% smaller** than loading everything (paqad-ai's own repo: 61%; a fresh React onboard: 49%). Both used the char/4 heuristic tokenizer, so treat them as an honest floor, not a marketing ceiling. The method, the per-project numbers, and the caveats are in [`docs/instructions/benchmarks/measured.md`](docs/instructions/benchmarks/measured.md), and you can reproduce them in your own repo:
273
+
274
+ ```
275
+ node scripts/measure-footprint.mjs --project .
276
+ ```
271
277
 
272
278
  - It splits files at natural boundaries (functions and classes), not at arbitrary line counts.
273
279
  - It ranks each piece by five signals: meaning, keywords, the symbols involved, how close the file is to the task, and how deeply nested it is.
package/dist/cli/index.js CHANGED
@@ -1431,7 +1431,7 @@ var init_framework_config = __esm({
1431
1431
  env: "PAQAD_DECISIONS_ASK_THRESHOLD",
1432
1432
  type: "enum",
1433
1433
  enumValues: ASK_THRESHOLDS,
1434
- default: "balanced",
1434
+ default: "strict",
1435
1435
  group: "policy",
1436
1436
  section: "Decisions (pause-contract tuning)",
1437
1437
  comment: "strict | balanced | permissive \u2014 how eagerly to pause and ask."
@@ -24070,7 +24070,7 @@ function buildProjectProfile(selections, snapshot, overrides, projectRoot) {
24070
24070
  verification_plugins: [],
24071
24071
  escalation_rules: [],
24072
24072
  decisions: {
24073
- ask_threshold: "balanced",
24073
+ ask_threshold: "strict",
24074
24074
  max_screens_per_task: 3,
24075
24075
  idle_timeout_minutes: 30
24076
24076
  }
@@ -26122,7 +26122,7 @@ init_cancelled_error();
26122
26122
  init_events();
26123
26123
 
26124
26124
  // src/index.ts
26125
- var VERSION = "1.42.0";
26125
+ var VERSION = "1.44.0";
26126
26126
 
26127
26127
  // src/cli/commands/audit.ts
26128
26128
  init_esm_shims();