@evomap/evolver 1.67.6 → 1.68.0-beta.2
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/assets/gep/candidates.jsonl +9 -6
- package/index.js +9 -0
- package/package.json +1 -1
- package/src/config.js +42 -0
- package/src/evolve.js +1 -1
- package/src/gep/.integrity +0 -0
- package/src/gep/a2aProtocol.js +1 -1
- package/src/gep/candidateEval.js +1 -1
- package/src/gep/candidates.js +1 -1
- package/src/gep/contentHash.js +1 -1
- package/src/gep/crypto.js +1 -1
- package/src/gep/curriculum.js +1 -1
- package/src/gep/deviceId.js +1 -1
- package/src/gep/envFingerprint.js +1 -1
- package/src/gep/explore.js +1 -1
- package/src/gep/hubReview.js +1 -1
- package/src/gep/hubSearch.js +1 -1
- package/src/gep/hubVerify.js +1 -1
- package/src/gep/integrityCheck.js +1 -1
- package/src/gep/learningSignals.js +1 -1
- package/src/gep/memoryGraph.js +1 -1
- package/src/gep/memoryGraphAdapter.js +1 -1
- package/src/gep/mutation.js +1 -1
- package/src/gep/narrativeMemory.js +1 -1
- package/src/gep/personality.js +1 -1
- package/src/gep/policyCheck.js +1 -1
- package/src/gep/prompt.js +1 -1
- package/src/gep/reflection.js +1 -1
- package/src/gep/selector.js +1 -1
- package/src/gep/shield.js +1 -1
- package/src/gep/skillDistiller.js +1 -1
- package/src/gep/solidify.js +1 -1
- package/src/gep/strategy.js +1 -1
- package/src/gep/validator/index.js +170 -0
- package/src/gep/validator/reporter.js +118 -0
- package/src/gep/validator/sandboxExecutor.js +262 -0
- package/src/gep/validator/stakeBootstrap.js +81 -0
- package/src/ops/skills_monitor.js +1 -1
- package/src/proxy/mailbox/store.js +3 -1
|
@@ -1,6 +1,9 @@
|
|
|
1
|
-
{"type":"CapabilityCandidate","id":"cand_b9a66a5c","title":"Harden session log detection and fallback behavior","source":"signals","created_at":"2026-04-
|
|
2
|
-
{"type":"CapabilityCandidate","id":"cand_b9a66a5c","title":"Harden session log detection and fallback behavior","source":"signals","created_at":"2026-04-
|
|
3
|
-
{"type":"CapabilityCandidate","id":"cand_b9a66a5c","title":"Harden session log detection and fallback behavior","source":"signals","created_at":"2026-04-
|
|
4
|
-
{"type":"CapabilityCandidate","id":"cand_b9a66a5c","title":"Harden session log detection and fallback behavior","source":"signals","created_at":"2026-04-
|
|
5
|
-
{"type":"CapabilityCandidate","id":"cand_b9a66a5c","title":"Harden session log detection and fallback behavior","source":"signals","created_at":"2026-04-
|
|
6
|
-
{"type":"CapabilityCandidate","id":"cand_b9a66a5c","title":"Harden session log detection and fallback behavior","source":"signals","created_at":"2026-04-
|
|
1
|
+
{"type":"CapabilityCandidate","id":"cand_b9a66a5c","title":"Harden session log detection and fallback behavior","source":"signals","created_at":"2026-04-19T14:48:03.166Z","signals":["memory_missing","user_missing","session_logs_missing"],"tags":["memory_missing","user_missing","session_logs_missing","area:memory"],"shape":{"title":"Harden session log detection and fallback behavior","input":"Recent session transcript + memory snippets + user instructions","output":"A safe, auditable evolution patch guided by GEP assets","invariants":"Protocol order, small reversible patches, validation, append-only events","params":"Signals: memory_missing, user_missing, session_logs_missing","failure_points":"Missing signals, over-broad changes, skipped validation, missing knowledge solidification","evidence":"Signal present: session_logs_missing"}}
|
|
2
|
+
{"type":"CapabilityCandidate","id":"cand_b9a66a5c","title":"Harden session log detection and fallback behavior","source":"signals","created_at":"2026-04-19T14:48:04.796Z","signals":["memory_missing","user_missing","session_logs_missing"],"tags":["memory_missing","user_missing","session_logs_missing","area:memory"],"shape":{"title":"Harden session log detection and fallback behavior","input":"Recent session transcript + memory snippets + user instructions","output":"A safe, auditable evolution patch guided by GEP assets","invariants":"Protocol order, small reversible patches, validation, append-only events","params":"Signals: memory_missing, user_missing, session_logs_missing","failure_points":"Missing signals, over-broad changes, skipped validation, missing knowledge solidification","evidence":"Signal present: session_logs_missing"}}
|
|
3
|
+
{"type":"CapabilityCandidate","id":"cand_b9a66a5c","title":"Harden session log detection and fallback behavior","source":"signals","created_at":"2026-04-19T14:48:06.477Z","signals":["memory_missing","user_missing","session_logs_missing"],"tags":["memory_missing","user_missing","session_logs_missing","area:memory"],"shape":{"title":"Harden session log detection and fallback behavior","input":"Recent session transcript + memory snippets + user instructions","output":"A safe, auditable evolution patch guided by GEP assets","invariants":"Protocol order, small reversible patches, validation, append-only events","params":"Signals: memory_missing, user_missing, session_logs_missing","failure_points":"Missing signals, over-broad changes, skipped validation, missing knowledge solidification","evidence":"Signal present: session_logs_missing"}}
|
|
4
|
+
{"type":"CapabilityCandidate","id":"cand_b9a66a5c","title":"Harden session log detection and fallback behavior","source":"signals","created_at":"2026-04-19T14:49:10.544Z","signals":["memory_missing","user_missing","session_logs_missing"],"tags":["memory_missing","user_missing","session_logs_missing","area:memory"],"shape":{"title":"Harden session log detection and fallback behavior","input":"Recent session transcript + memory snippets + user instructions","output":"A safe, auditable evolution patch guided by GEP assets","invariants":"Protocol order, small reversible patches, validation, append-only events","params":"Signals: memory_missing, user_missing, session_logs_missing","failure_points":"Missing signals, over-broad changes, skipped validation, missing knowledge solidification","evidence":"Signal present: session_logs_missing"}}
|
|
5
|
+
{"type":"CapabilityCandidate","id":"cand_b9a66a5c","title":"Harden session log detection and fallback behavior","source":"signals","created_at":"2026-04-19T14:49:12.172Z","signals":["memory_missing","user_missing","session_logs_missing"],"tags":["memory_missing","user_missing","session_logs_missing","area:memory"],"shape":{"title":"Harden session log detection and fallback behavior","input":"Recent session transcript + memory snippets + user instructions","output":"A safe, auditable evolution patch guided by GEP assets","invariants":"Protocol order, small reversible patches, validation, append-only events","params":"Signals: memory_missing, user_missing, session_logs_missing","failure_points":"Missing signals, over-broad changes, skipped validation, missing knowledge solidification","evidence":"Signal present: session_logs_missing"}}
|
|
6
|
+
{"type":"CapabilityCandidate","id":"cand_b9a66a5c","title":"Harden session log detection and fallback behavior","source":"signals","created_at":"2026-04-19T14:49:13.837Z","signals":["memory_missing","user_missing","session_logs_missing"],"tags":["memory_missing","user_missing","session_logs_missing","area:memory"],"shape":{"title":"Harden session log detection and fallback behavior","input":"Recent session transcript + memory snippets + user instructions","output":"A safe, auditable evolution patch guided by GEP assets","invariants":"Protocol order, small reversible patches, validation, append-only events","params":"Signals: memory_missing, user_missing, session_logs_missing","failure_points":"Missing signals, over-broad changes, skipped validation, missing knowledge solidification","evidence":"Signal present: session_logs_missing"}}
|
|
7
|
+
{"type":"CapabilityCandidate","id":"cand_b9a66a5c","title":"Harden session log detection and fallback behavior","source":"signals","created_at":"2026-04-19T14:49:35.284Z","signals":["memory_missing","user_missing","session_logs_missing"],"tags":["memory_missing","user_missing","session_logs_missing","area:memory"],"shape":{"title":"Harden session log detection and fallback behavior","input":"Recent session transcript + memory snippets + user instructions","output":"A safe, auditable evolution patch guided by GEP assets","invariants":"Protocol order, small reversible patches, validation, append-only events","params":"Signals: memory_missing, user_missing, session_logs_missing","failure_points":"Missing signals, over-broad changes, skipped validation, missing knowledge solidification","evidence":"Signal present: session_logs_missing"}}
|
|
8
|
+
{"type":"CapabilityCandidate","id":"cand_b9a66a5c","title":"Harden session log detection and fallback behavior","source":"signals","created_at":"2026-04-19T14:49:37.005Z","signals":["memory_missing","user_missing","session_logs_missing"],"tags":["memory_missing","user_missing","session_logs_missing","area:memory"],"shape":{"title":"Harden session log detection and fallback behavior","input":"Recent session transcript + memory snippets + user instructions","output":"A safe, auditable evolution patch guided by GEP assets","invariants":"Protocol order, small reversible patches, validation, append-only events","params":"Signals: memory_missing, user_missing, session_logs_missing","failure_points":"Missing signals, over-broad changes, skipped validation, missing knowledge solidification","evidence":"Signal present: session_logs_missing"}}
|
|
9
|
+
{"type":"CapabilityCandidate","id":"cand_b9a66a5c","title":"Harden session log detection and fallback behavior","source":"signals","created_at":"2026-04-19T14:49:38.662Z","signals":["memory_missing","user_missing","session_logs_missing"],"tags":["memory_missing","user_missing","session_logs_missing","area:memory"],"shape":{"title":"Harden session log detection and fallback behavior","input":"Recent session transcript + memory snippets + user instructions","output":"A safe, auditable evolution patch guided by GEP assets","invariants":"Protocol order, small reversible patches, validation, append-only events","params":"Signals: memory_missing, user_missing, session_logs_missing","failure_points":"Missing signals, over-broad changes, skipped validation, missing knowledge solidification","evidence":"Signal present: session_logs_missing"}}
|
package/index.js
CHANGED
|
@@ -522,6 +522,15 @@ async function main() {
|
|
|
522
522
|
process.exit(1);
|
|
523
523
|
}
|
|
524
524
|
const responseFilePath = responseFileFlag.slice('--response-file='.length);
|
|
525
|
+
{
|
|
526
|
+
const { getRepoRoot } = require('./src/gep/paths');
|
|
527
|
+
const resolvedResponsePath = path.resolve(responseFilePath);
|
|
528
|
+
const resolvedRepoRoot = path.resolve(getRepoRoot());
|
|
529
|
+
if (responseFilePath.includes('..') || !resolvedResponsePath.startsWith(resolvedRepoRoot)) {
|
|
530
|
+
console.error('[Distill] ERROR: Invalid response-file path "' + responseFilePath + '" - path traversal detected or path is outside the repository.');
|
|
531
|
+
process.exit(2);
|
|
532
|
+
}
|
|
533
|
+
}
|
|
525
534
|
try {
|
|
526
535
|
const responseText = fs.readFileSync(responseFilePath, 'utf8');
|
|
527
536
|
const { completeDistillation } = require('./src/gep/skillDistiller');
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@evomap/evolver",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.68.0-beta.2",
|
|
4
4
|
"description": "A GEP-powered self-evolution engine for AI agents. Features automated log analysis and Genome Evolution Protocol (GEP) for auditable, reusable evolution assets.",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"bin": {
|
package/src/config.js
CHANGED
|
@@ -47,6 +47,19 @@ const MAX_REGEX_PATTERN_LEN = 1024;
|
|
|
47
47
|
// --- Evolution Loop ---
|
|
48
48
|
|
|
49
49
|
const REPAIR_LOOP_THRESHOLD = envInt('EVOLVER_REPAIR_LOOP_THRESHOLD', 3);
|
|
50
|
+
|
|
51
|
+
// --- Gene Suppression (saturated / repeatedly failing genes) ---
|
|
52
|
+
// These thresholds control when a Gene is forcibly excluded from selection
|
|
53
|
+
// regardless of drift state. Without this, a Gene that fails repeatedly can
|
|
54
|
+
// trigger plateau detection -> drift mode -> the legacy ban skip path,
|
|
55
|
+
// resulting in the same failed Gene being re-selected forever.
|
|
56
|
+
//
|
|
57
|
+
// GENE_BAN_PER_KEY_ATTEMPTS: minimum attempts on the same signal key
|
|
58
|
+
// GENE_BAN_BEST_THRESHOLD: best success rate at or below which the Gene is banned
|
|
59
|
+
// GENE_EPIGENETIC_HARD_BOOST: epigenetic boost at or below which the Gene is hard-suppressed
|
|
60
|
+
const GENE_BAN_PER_KEY_ATTEMPTS = envInt('EVOLVER_GENE_BAN_PER_KEY_ATTEMPTS', 4);
|
|
61
|
+
const GENE_BAN_BEST_THRESHOLD = envFloat('EVOLVER_GENE_BAN_BEST_THRESHOLD', 0.15);
|
|
62
|
+
const GENE_EPIGENETIC_HARD_BOOST = envFloat('EVOLVER_GENE_EPIGENETIC_HARD_BOOST', -0.3);
|
|
50
63
|
const SESSION_ARCHIVE_TRIGGER = envInt('EVOLVER_SESSION_ARCHIVE_TRIGGER', 100);
|
|
51
64
|
const SESSION_ARCHIVE_KEEP = envInt('EVOLVER_SESSION_ARCHIVE_KEEP', 50);
|
|
52
65
|
const MEMORY_FRAGMENT_MAX_CHARS = envInt('EVOLVER_MEMORY_FRAGMENT_MAX_CHARS', 50000);
|
|
@@ -84,6 +97,23 @@ const SELF_PR_TIMEOUT_MS = envInt('EVOLVER_SELF_PR_TIMEOUT_MS', 30000);
|
|
|
84
97
|
|
|
85
98
|
const LEAK_CHECK_MODE = envStr('EVOLVER_LEAK_CHECK', 'warn');
|
|
86
99
|
|
|
100
|
+
// --- Validator mode (opt-in) ---
|
|
101
|
+
// Opt-in node role: when enabled, the evolver periodically fetches assigned
|
|
102
|
+
// validation tasks from the Hub, runs the commands in an isolated sandbox,
|
|
103
|
+
// and submits ValidationReports. Default is OFF for backward compatibility.
|
|
104
|
+
|
|
105
|
+
const VALIDATOR_ENABLED = (function () {
|
|
106
|
+
const v = String(process.env.EVOLVER_VALIDATOR_ENABLED || '').toLowerCase().trim();
|
|
107
|
+
return v === '1' || v === 'true' || v === 'yes' || v === 'on';
|
|
108
|
+
})();
|
|
109
|
+
const VALIDATOR_STAKE_AMOUNT = envInt('EVOLVER_VALIDATOR_STAKE_AMOUNT', 100);
|
|
110
|
+
const VALIDATOR_MAX_TASKS_PER_CYCLE = envInt('EVOLVER_VALIDATOR_MAX_TASKS_PER_CYCLE', 2);
|
|
111
|
+
const VALIDATOR_FETCH_TIMEOUT_MS = envInt('EVOLVER_VALIDATOR_FETCH_TIMEOUT_MS', 8000);
|
|
112
|
+
const VALIDATOR_REPORT_TIMEOUT_MS = envInt('EVOLVER_VALIDATOR_REPORT_TIMEOUT_MS', 10000);
|
|
113
|
+
const VALIDATOR_STAKE_TIMEOUT_MS = envInt('EVOLVER_VALIDATOR_STAKE_TIMEOUT_MS', 10000);
|
|
114
|
+
const VALIDATOR_CMD_TIMEOUT_MS = envInt('EVOLVER_VALIDATOR_CMD_TIMEOUT_MS', 60000);
|
|
115
|
+
const VALIDATOR_BATCH_TIMEOUT_MS = envInt('EVOLVER_VALIDATOR_BATCH_TIMEOUT_MS', 180000);
|
|
116
|
+
|
|
87
117
|
module.exports = {
|
|
88
118
|
// Network
|
|
89
119
|
HELLO_TIMEOUT_MS,
|
|
@@ -106,6 +136,9 @@ module.exports = {
|
|
|
106
136
|
MAX_REGEX_PATTERN_LEN,
|
|
107
137
|
// Evolution
|
|
108
138
|
REPAIR_LOOP_THRESHOLD,
|
|
139
|
+
GENE_BAN_PER_KEY_ATTEMPTS,
|
|
140
|
+
GENE_BAN_BEST_THRESHOLD,
|
|
141
|
+
GENE_EPIGENETIC_HARD_BOOST,
|
|
109
142
|
SESSION_ARCHIVE_TRIGGER,
|
|
110
143
|
SESSION_ARCHIVE_KEEP,
|
|
111
144
|
MEMORY_FRAGMENT_MAX_CHARS,
|
|
@@ -136,6 +169,15 @@ module.exports = {
|
|
|
136
169
|
SELF_PR_TIMEOUT_MS,
|
|
137
170
|
// Security
|
|
138
171
|
LEAK_CHECK_MODE,
|
|
172
|
+
// Validator (opt-in role)
|
|
173
|
+
VALIDATOR_ENABLED,
|
|
174
|
+
VALIDATOR_STAKE_AMOUNT,
|
|
175
|
+
VALIDATOR_MAX_TASKS_PER_CYCLE,
|
|
176
|
+
VALIDATOR_FETCH_TIMEOUT_MS,
|
|
177
|
+
VALIDATOR_REPORT_TIMEOUT_MS,
|
|
178
|
+
VALIDATOR_STAKE_TIMEOUT_MS,
|
|
179
|
+
VALIDATOR_CMD_TIMEOUT_MS,
|
|
180
|
+
VALIDATOR_BATCH_TIMEOUT_MS,
|
|
139
181
|
// Helpers
|
|
140
182
|
envInt,
|
|
141
183
|
envFloat,
|