@lmzhen/dsh-evolution-curator 0.1.0-rc.60 → 0.1.0-rc.62

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 (2) hide show
  1. package/lib/index.js +8 -2
  2. package/package.json +7 -7
package/lib/index.js CHANGED
@@ -3,7 +3,7 @@ import { randomUUID } from "node:crypto";
3
3
  import { join } from "node:path";
4
4
  import { BlockAssembler, createUserMessage } from "@deepseek-ai/dsh-llm";
5
5
  import z from "@deepseek-ai/schemastery";
6
- import { CURATOR_DRY_RUN_BANNER, CURATOR_PROMPT, DEFAULT_ARCHIVE_AFTER_DAYS, DEFAULT_CURATOR_INTERVAL_HOURS, DEFAULT_MIN_IDLE_HOURS, DEFAULT_STALE_AFTER_DAYS, EvolutionGateSet, SkillLibrary, buildCuratorRunReport, computeLifecycleTransitions, computeQualityScores, computeScopeView, emptyRecord, evolutionHome, evolutionIoAdapter, loadSuppressedNames, loadUsage, parseCuratorNominations, relatedSkillNames, renderCuratorReportMarkdown, saveUsage, updateSuppressedNames } from "@lmzhen/dsh-evolution-core";
6
+ import { CURATOR_DRY_RUN_BANNER, CURATOR_PROMPT, DEFAULT_ARCHIVE_AFTER_DAYS, DEFAULT_CURATOR_INTERVAL_HOURS, DEFAULT_MIN_IDLE_HOURS, DEFAULT_STALE_AFTER_DAYS, EvolutionGateSet, SkillLibrary, buildCuratorRunReport, computeDedupGroups, computeLifecycleTransitions, computeQualityScores, computeScopeView, emptyRecord, evolutionHome, evolutionIoAdapter, loadSuppressedNames, loadUsage, parseCuratorNominations, relatedSkillNames, renderCuratorReportMarkdown, saveUsage, updateSuppressedNames } from "@lmzhen/dsh-evolution-core";
7
7
  //#region lib/types/index.js
8
8
  /**
9
9
  * Deterministic skill lifecycle curator with interval gate and archive.
@@ -334,6 +334,12 @@ var EvolutionCurator = class extends Service {
334
334
  suppressed: suppressedNames
335
335
  });
336
336
  const { bundledNames, treeNames } = await this.seedBaseline(usage);
337
+ const contents = /* @__PURE__ */ new Map();
338
+ for (const name of treeNames) {
339
+ const text = await this.skills.read(name);
340
+ if (text) contents.set(name, text);
341
+ }
342
+ const dedupMembers = [...new Set(computeDedupGroups({ contents }).filter((group) => group.length >= 2).flat())];
337
343
  await this.scoreTree(usage, treeNames);
338
344
  const result = computeLifecycleTransitions(usage, {
339
345
  staleAfterDays: lifecycle.staleAfterDays,
@@ -346,7 +352,7 @@ var EvolutionCurator = class extends Service {
346
352
  suppressedNames,
347
353
  referencedSkillNames: this.referencedSkillNames
348
354
  }, /* @__PURE__ */ new Date(), gates);
349
- const nominations = this.llmReview ? await this.recommend(result.markStale, { dryRun }) : {
355
+ const nominations = this.llmReview ? await this.recommend([...new Set([...result.markStale, ...dedupMembers])], { dryRun }) : {
350
356
  prunings: [],
351
357
  consolidations: []
352
358
  };
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@lmzhen/dsh-evolution-curator",
3
3
  "description": "Deterministic skill lifecycle and recovery (community build)",
4
- "version": "0.1.0-rc.60",
4
+ "version": "0.1.0-rc.62",
5
5
  "publishConfig": {
6
6
  "access": "public"
7
7
  },
@@ -33,20 +33,20 @@
33
33
  "license": "MIT",
34
34
  "dependencies": {
35
35
  "@deepseek-ai/schemastery": "^3.18.1",
36
- "@lmzhen/dsh-evolution-core": "^0.1.0-rc.60"
36
+ "@lmzhen/dsh-evolution-core": "^0.1.0-rc.62"
37
37
  },
38
38
  "peerDependencies": {
39
39
  "@deepseek-ai/cordis": "^4.0.1",
40
40
  "@deepseek-ai/dsh-invariants": "^0.1.1-rc.2",
41
41
  "@deepseek-ai/dsh-llm": "^0.1.1-rc.2",
42
- "@lmzhen/dsh-evolution-io": "^0.1.0-rc.60",
43
- "@lmzhen/dsh-evolution-state": "^0.1.0-rc.60"
42
+ "@lmzhen/dsh-evolution-io": "^0.1.0-rc.62",
43
+ "@lmzhen/dsh-evolution-state": "^0.1.0-rc.62"
44
44
  },
45
45
  "devDependencies": {
46
46
  "@deepseek-ai/dsh-invariants": "^0.1.1-rc.2",
47
47
  "@deepseek-ai/dsh-llm": "^0.1.1-rc.2",
48
- "@lmzhen/dsh-evolution-core": "^0.1.0-rc.60",
49
- "@lmzhen/dsh-evolution-io": "^0.1.0-rc.60",
50
- "@lmzhen/dsh-evolution-state": "^0.1.0-rc.60"
48
+ "@lmzhen/dsh-evolution-core": "^0.1.0-rc.62",
49
+ "@lmzhen/dsh-evolution-io": "^0.1.0-rc.62",
50
+ "@lmzhen/dsh-evolution-state": "^0.1.0-rc.62"
51
51
  }
52
52
  }