@dzhechkov/skills-feature-adr 1.3.12 → 1.3.13

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dzhechkov/skills-feature-adr",
3
- "version": "1.3.12",
3
+ "version": "1.3.13",
4
4
  "description": "Adaptive Feature Development skill pack for Claude Code — 11-step pipeline with Complexity Router (S/M/L/XL), ADR-driven architecture, 15 agentic-qe skills, multi-agent fleet QE. Supports --full-qe, --full-qe-extended, --with-learning, and --knowledge-extractor modes.",
5
5
  "bin": {
6
6
  "skills-feature-adr": "./bin/cli.js"
@@ -348,13 +348,19 @@ Step 0 (Complexity Router) checks:
348
348
  When `{AGENTIC_QE_MODE}` = `direct` | `direct-extended`, the pipeline runs a recall → store cycle
349
349
  over agentic-qe's MCP pattern memory (`namespace: "learning"`, `fleet_init` first):
350
350
 
351
- - **Step 0** — `memory_query("patterns/feature-adr/*")` sets `{LEARNED_PATTERNS}` (top-3 by confidence); Step 1 folds them into the requirements brief as advisory lessons.
352
- - **Step 8** recalls `patterns/feature-adr/qe/*` to prime the review checklist; stores a `qe-outcome` record after the gap loop closes.
353
- - **Step 9** — recalls `patterns/feature-adr/fleet/*` to prime agent focus; stores a `fleet-qe-finding` record after the fleet verdict.
354
-
355
- All calls are non-blocking an error or empty result never stalls the pipeline. This layer is
351
+ - **Step 0** — `memory_query("patterns/feature-adr/*")` **plus** `dz recall --json` over the durable
352
+ dz store merged top-3 set `{LEARNED_PATTERNS}`; Step 1 folds them into the requirements brief as advisory lessons.
353
+ - **Step 8** — recalls `patterns/feature-adr/qe/*` to prime the review checklist; after the gap loop
354
+ closes, stores a `qe-outcome` record in aqe **and** the same lesson via `dz teach` (durable).
355
+ - **Step 9**recalls `patterns/feature-adr/fleet/*` to prime agent focus; after the fleet verdict,
356
+ stores a `fleet-qe-finding` in aqe **and** the same lesson via `dz teach`.
357
+
358
+ **Two stores by design:** the aqe kv store is *ephemeral across MCP-server restarts* (janitor/TTL —
359
+ observed live), so it serves fast in-session semantic recall; the dz lexical store
360
+ (`dz teach`/`dz recall`) is the durable half that survives to the next day. All calls are
361
+ non-blocking — an error or empty result never stalls the pipeline. This layer is
356
362
  **distinct from the Keysarium reward layer** installed by `--with-learning`: it uses agentic-qe MCP
357
- memory, is gated on Direct modes only, and never touches `.keysarium/memory/`.
363
+ memory + the dz store, is gated on Direct modes only, and never touches `.keysarium/memory/`.
358
364
 
359
365
  ### What changes with `--full-qe`
360
366
 
@@ -86,8 +86,13 @@ Runs after tier classification, only when `{AGENTIC_QE_MODE}` = `direct` | `dire
86
86
 
87
87
  1. If the aqe fleet is not yet initialized this session, call `mcp__agentic-qe__fleet_init` first (required before any other aqe MCP tool).
88
88
  2. Call `mcp__agentic-qe__memory_query({ pattern: "patterns/feature-adr/*", namespace: "learning", limit: 5 })`.
89
- 3. Select the top 3 results by `confidence` set `{LEARNED_PATTERNS}`.
90
- 4. Reference mode, no hits, or error `{LEARNED_PATTERNS}` = `[]`; proceed normally.
89
+ 3. ALSO query the **durable half** of the loop the dz lexical store:
90
+ `dz recall "<feature domain keywords>" --json --limit 5` (CLI; works wherever dz is set up).
91
+ Why both: the aqe kv store is **ephemeral across MCP-server restarts** (janitor/TTL — observed
92
+ live: a record survived hours, not days), so aqe serves in-session semantic recall while the
93
+ dz store is the durable memory the loop can trust tomorrow.
94
+ 4. Merge both result sets, dedupe by content, select the top 3 by confidence/reward → set `{LEARNED_PATTERNS}`.
95
+ 5. Reference mode, no hits, or errors (either store) → `{LEARNED_PATTERNS}` = `[]` or the surviving half; proceed normally.
91
96
 
92
97
  Step 1 folds `{LEARNED_PATTERNS}` into the requirements brief as "lessons from previous features" — advisory context only, never requirements themselves. Why here: Step 0 is the one point where recall can be keyed to the feature's phase and domain — per-prompt hook auto-injection cannot see which pipeline step is running.
93
98
 
@@ -226,6 +226,16 @@ mcp__agentic-qe__memory_store({
226
226
 
227
227
  Confidence must be honest — derived from the gap loop, never a fabricated 1.0
228
228
  (e.g. zero gaps in one iteration ≈ 0.9; gaps remaining after 3 iterations ≤ 0.4).
229
+
230
+ Then persist the SAME lesson durably (the aqe kv store is ephemeral across MCP-server
231
+ restarts — observed live; the dz lexical store is the half that survives):
232
+
233
+ ```
234
+ dz teach "<the same one-sentence lesson>" --reward <same confidence> --domain feature-adr \
235
+ --type <success-pattern if verdict READY, else lesson-learned>
236
+ ```
237
+
238
+ Non-blocking: if `dz` is not on PATH or the command fails, note it and proceed.
229
239
  Non-blocking: a write failure is logged and the pipeline continues.
230
240
 
231
241
  ## Output
@@ -294,6 +294,16 @@ mcp__agentic-qe__memory_store({
294
294
  })
295
295
  ```
296
296
 
297
+ Then persist the SAME finding durably via the dz lexical store (the aqe kv store is
298
+ ephemeral across MCP-server restarts — the dz half survives):
299
+
300
+ ```
301
+ dz teach "<the same one-sentence lesson>" --reward <same confidence> --domain feature-adr \
302
+ --type <success-pattern if COMPLETE, else lesson-learned>
303
+ ```
304
+
305
+ Non-blocking: if `dz` is unavailable or fails, note it and proceed.
306
+
297
307
  ## Direct Extended Mode (`--full-qe-extended`)
298
308
 
299
309
  When `{AGENTIC_QE_MODE}` = `direct-extended`, Step 9 gets everything from