@lmzhen/dsh-evolution-curator 0.3.66 → 0.3.67
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/README.md +1 -1
- package/lib/index.js +0 -6
- package/package.json +7 -7
package/README.md
CHANGED
|
@@ -33,7 +33,7 @@ Independent of request-prefix construction. This package does not alter the asse
|
|
|
33
33
|
- `archive` never deletes: skills move to `.archive/` with a `.archive-reason` marker.
|
|
34
34
|
- `restore(name)` (service) / `/evolution skill restore <name>` brings one archived skill back to the active root and resets its usage state.
|
|
35
35
|
- `consolidate(target, sources)` (service) / `/evolution consolidate` merges source bodies into the target, archives the sources with an absorbed-into marker, and folds their usage records into `archived` state. Both operations snapshot the full state first (`pre-consolidate` / `pre-restore`).
|
|
36
|
-
- `restoreSnapshot` (service) / `/evolution restore` rolls the
|
|
36
|
+
- `restoreSnapshot` (service) / `/evolution restore` rolls the state back to the latest snapshot: active tree, usage/suppression sidecars, `.archive/` and the curator state carried in the snapshot (`curator-state.json`), so the interval gate does not immediately re-fire after a rollback. Skills that were skipped at snapshot time (a live writer held their lock; recorded in the manifest's `skipped` list) are NOT restored — the restore result names them, and `.backups` may hold a copy. The restore itself is undoable — the pre-rollback safety snapshot preserves the current tree plus its state.
|
|
37
37
|
|
|
38
38
|
## Automatic scheduling
|
|
39
39
|
|
package/lib/index.js
CHANGED
|
@@ -815,12 +815,6 @@ var EvolutionCurator = class extends Service {
|
|
|
815
815
|
} catch {
|
|
816
816
|
this.ctx.logger.warn("evolution-curator: failed to persist usage sidecar");
|
|
817
817
|
}
|
|
818
|
-
const usageRegistry = this.ctx.get("skillUsage");
|
|
819
|
-
try {
|
|
820
|
-
await usageRegistry?.invalidate?.();
|
|
821
|
-
} catch (error) {
|
|
822
|
-
this.ctx.logger.warn(`evolution-curator: skillUsage cache invalidate failed after curation: ${error instanceof Error ? error.message : String(error)}`);
|
|
823
|
-
}
|
|
824
818
|
return {
|
|
825
819
|
archivedSkills,
|
|
826
820
|
errors,
|
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.3.
|
|
4
|
+
"version": "0.3.67",
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"access": "public"
|
|
7
7
|
},
|
|
@@ -31,20 +31,20 @@
|
|
|
31
31
|
"license": "MIT",
|
|
32
32
|
"dependencies": {
|
|
33
33
|
"@deepseek-ai/schemastery": "^3.18.1",
|
|
34
|
-
"@lmzhen/dsh-evolution-core": "^0.3.
|
|
34
|
+
"@lmzhen/dsh-evolution-core": "^0.3.67"
|
|
35
35
|
},
|
|
36
36
|
"peerDependencies": {
|
|
37
37
|
"@deepseek-ai/cordis": "^4.0.1",
|
|
38
38
|
"@deepseek-ai/dsh-invariants": "^0.1.1-rc.2",
|
|
39
39
|
"@deepseek-ai/dsh-llm": "^0.1.1-rc.2",
|
|
40
|
-
"@lmzhen/dsh-evolution-io": "^0.3.
|
|
41
|
-
"@lmzhen/dsh-evolution-state": "^0.3.
|
|
40
|
+
"@lmzhen/dsh-evolution-io": "^0.3.67",
|
|
41
|
+
"@lmzhen/dsh-evolution-state": "^0.3.67"
|
|
42
42
|
},
|
|
43
43
|
"devDependencies": {
|
|
44
44
|
"@deepseek-ai/dsh-invariants": "^0.1.1-rc.2",
|
|
45
45
|
"@deepseek-ai/dsh-llm": "^0.1.1-rc.2",
|
|
46
|
-
"@lmzhen/dsh-evolution-core": "^0.3.
|
|
47
|
-
"@lmzhen/dsh-evolution-io": "^0.3.
|
|
48
|
-
"@lmzhen/dsh-evolution-state": "^0.3.
|
|
46
|
+
"@lmzhen/dsh-evolution-core": "^0.3.67",
|
|
47
|
+
"@lmzhen/dsh-evolution-io": "^0.3.67",
|
|
48
|
+
"@lmzhen/dsh-evolution-state": "^0.3.67"
|
|
49
49
|
}
|
|
50
50
|
}
|