@evomap/evolver 1.69.20 → 1.69.21
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 -3
- package/assets/gep/genes.json +39 -1
- package/index.js +29 -3
- package/package.json +1 -1
- 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/sandboxExecutor.js +53 -8
- package/src/proxy/lifecycle/manager.js +2 -0
|
@@ -1,3 +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-
|
|
1
|
+
{"type":"CapabilityCandidate","id":"cand_b9a66a5c","title":"Harden session log detection and fallback behavior","source":"signals","created_at":"2026-04-24T03:53:54.271Z","signals":["bounty_task","external_task","设计etl批处理任务时,如何有效地处理源数据中存在的重复记录以确保目标表的幂等性?","data-deduplication","idempotency","batch-processing","ETL","memory_missing","user_missing","session_logs_missing"],"tags":["bounty_task","external_task","设计etl批处理任务时,如何有效地处理源数据中存在的重复记录以确保目标表的幂等性?","data-deduplication","idempotency","batch-processing","ETL","memory_missing","user_missing","session_logs_missing","area:orchestration","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: bounty_task, external_task, 设计etl批处理任务时,如何有效地处理源数据中存在的重复记录以确保目标表的幂等性?, data-deduplication, idempotency, batch-processing, ETL, 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-24T03:53:56.218Z","signals":["bounty_task","external_task","设计etl批处理任务时,如何有效地处理源数据中存在的重复记录以确保目标表的幂等性?","data-deduplication","idempotency","batch-processing","ETL","memory_missing","user_missing","session_logs_missing"],"tags":["bounty_task","external_task","设计etl批处理任务时,如何有效地处理源数据中存在的重复记录以确保目标表的幂等性?","data-deduplication","idempotency","batch-processing","ETL","memory_missing","user_missing","session_logs_missing","area:orchestration","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: bounty_task, external_task, 设计etl批处理任务时,如何有效地处理源数据中存在的重复记录以确保目标表的幂等性?, data-deduplication, idempotency, batch-processing, ETL, 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-24T03:53:58.128Z","signals":["bounty_task","external_task","设计etl批处理任务时,如何有效地处理源数据中存在的重复记录以确保目标表的幂等性?","data-deduplication","idempotency","batch-processing","ETL","memory_missing","user_missing","session_logs_missing"],"tags":["bounty_task","external_task","设计etl批处理任务时,如何有效地处理源数据中存在的重复记录以确保目标表的幂等性?","data-deduplication","idempotency","batch-processing","ETL","memory_missing","user_missing","session_logs_missing","area:orchestration","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: bounty_task, external_task, 设计etl批处理任务时,如何有效地处理源数据中存在的重复记录以确保目标表的幂等性?, data-deduplication, idempotency, batch-processing, ETL, 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-24T03:54:05.469Z","signals":["bounty_task","external_task","设计etl批处理任务时,如何有效地处理源数据中存在的重复记录以确保目标表的幂等性?","data-deduplication","idempotency","batch-processing","ETL","memory_missing","user_missing","session_logs_missing"],"tags":["bounty_task","external_task","设计etl批处理任务时,如何有效地处理源数据中存在的重复记录以确保目标表的幂等性?","data-deduplication","idempotency","batch-processing","ETL","memory_missing","user_missing","session_logs_missing","area:orchestration","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: bounty_task, external_task, 设计etl批处理任务时,如何有效地处理源数据中存在的重复记录以确保目标表的幂等性?, data-deduplication, idempotency, batch-processing, ETL, 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-24T03:54:07.587Z","signals":["bounty_task","external_task","设计etl批处理任务时,如何有效地处理源数据中存在的重复记录以确保目标表的幂等性?","data-deduplication","idempotency","batch-processing","ETL","memory_missing","user_missing","session_logs_missing"],"tags":["bounty_task","external_task","设计etl批处理任务时,如何有效地处理源数据中存在的重复记录以确保目标表的幂等性?","data-deduplication","idempotency","batch-processing","ETL","memory_missing","user_missing","session_logs_missing","area:orchestration","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: bounty_task, external_task, 设计etl批处理任务时,如何有效地处理源数据中存在的重复记录以确保目标表的幂等性?, data-deduplication, idempotency, batch-processing, ETL, 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-24T03:54:09.368Z","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-24T03:54:28.498Z","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-24T03:54:30.437Z","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-24T03:54:32.245Z","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/assets/gep/genes.json
CHANGED
|
@@ -78,7 +78,8 @@
|
|
|
78
78
|
"perf_bottleneck",
|
|
79
79
|
"capability_gap",
|
|
80
80
|
"stable_success_plateau",
|
|
81
|
-
"external_opportunity"
|
|
81
|
+
"external_opportunity",
|
|
82
|
+
"bounty_task"
|
|
82
83
|
],
|
|
83
84
|
"preconditions": [
|
|
84
85
|
"at least one opportunity signal is present",
|
|
@@ -105,6 +106,43 @@
|
|
|
105
106
|
"node scripts/validate-suite.js"
|
|
106
107
|
]
|
|
107
108
|
},
|
|
109
|
+
{
|
|
110
|
+
"type": "Gene",
|
|
111
|
+
"id": "gene_gep_optimize_tool_usage",
|
|
112
|
+
"summary": "Optimize tool execution patterns by reducing redundant exec calls, improving tool selection strategy, and enforcing tool-use constraints to prevent bypass.",
|
|
113
|
+
"category": "optimize",
|
|
114
|
+
"signals_match": [
|
|
115
|
+
"high_tool_usage:exec",
|
|
116
|
+
"repeated_tool_usage:exec",
|
|
117
|
+
"tool_bypass",
|
|
118
|
+
"tool_loop",
|
|
119
|
+
"high_tool_usage"
|
|
120
|
+
],
|
|
121
|
+
"preconditions": [
|
|
122
|
+
"agent repeatedly invokes the same tool (especially exec) without progress",
|
|
123
|
+
"tool execution bypass patterns detected",
|
|
124
|
+
"no active error signals (errors would take repair priority)"
|
|
125
|
+
],
|
|
126
|
+
"strategy": [
|
|
127
|
+
"Analyze tool usage patterns to identify the root cause of repetition (wrong tool, missing context, or lack of guardrails)",
|
|
128
|
+
"Introduce strategy-level guardrails: prefer single-shot commands, batch related operations, add explicit retry limits",
|
|
129
|
+
"If tool_bypass detected, strengthen constraint enforcement in prompt assembly or tool routing",
|
|
130
|
+
"Estimate blast radius; changes should target tool routing, prompt constraints, or signal deduplication logic",
|
|
131
|
+
"Validate by confirming no regressions in existing tool tests and signal extraction accuracy",
|
|
132
|
+
"Solidify: record EvolutionEvent with intent=optimize, update Capsule on success"
|
|
133
|
+
],
|
|
134
|
+
"constraints": {
|
|
135
|
+
"max_files": 15,
|
|
136
|
+
"forbidden_paths": [
|
|
137
|
+
".git",
|
|
138
|
+
"node_modules"
|
|
139
|
+
]
|
|
140
|
+
},
|
|
141
|
+
"validation": [
|
|
142
|
+
"node scripts/validate-modules.js ./src/gep/signals ./src/evolve",
|
|
143
|
+
"node scripts/validate-suite.js"
|
|
144
|
+
]
|
|
145
|
+
},
|
|
108
146
|
{
|
|
109
147
|
"type": "Gene",
|
|
110
148
|
"id": "gene_distilled_s2g-env-vars",
|
package/index.js
CHANGED
|
@@ -716,7 +716,13 @@ async function main() {
|
|
|
716
716
|
console.log('\n[Review] Rejected. Rolling back changes...');
|
|
717
717
|
try {
|
|
718
718
|
execSync('git checkout -- .', { cwd: repoRoot, encoding: 'utf8', timeout: 30000, maxBuffer: MAX_EXEC_BUFFER });
|
|
719
|
-
|
|
719
|
+
// Preserve user state on reject: .env files, node_modules, runtime
|
|
720
|
+
// PID files, and a dedicated workspace/ dir (if one exists) MUST NOT
|
|
721
|
+
// be wiped by an automated rollback. Users have reported losing
|
|
722
|
+
// secrets and runtime caches to an aggressive git clean.
|
|
723
|
+
execSync('git clean -fd -e node_modules -e workspace -e .env -e ".env.*" -e "*.pid"', {
|
|
724
|
+
cwd: repoRoot, encoding: 'utf8', timeout: 30000, maxBuffer: MAX_EXEC_BUFFER,
|
|
725
|
+
});
|
|
720
726
|
const evolDir = getEvolutionDir();
|
|
721
727
|
const sp = path.join(evolDir, 'evolution_solidify_state.json');
|
|
722
728
|
if (fs.existsSync(sp)) {
|
|
@@ -866,10 +872,30 @@ async function main() {
|
|
|
866
872
|
fs.writeFileSync(path.join(outDir, 'SKILL.md'), data.content, 'utf8');
|
|
867
873
|
}
|
|
868
874
|
|
|
875
|
+
const ALLOWED_SKILL_EXTENSIONS = new Set([
|
|
876
|
+
'.js', '.mjs', '.cjs', '.ts',
|
|
877
|
+
'.json', '.md', '.txt',
|
|
878
|
+
'.sh', '.py',
|
|
879
|
+
'.yml', '.yaml',
|
|
880
|
+
]);
|
|
881
|
+
const MAX_SKILL_FILE_BYTES = 512 * 1024;
|
|
882
|
+
|
|
869
883
|
const bundled = Array.isArray(data.bundled_files) ? data.bundled_files : [];
|
|
884
|
+
const skippedFiles = [];
|
|
870
885
|
for (const file of bundled) {
|
|
871
886
|
if (!file || !file.name || typeof file.content !== 'string') continue;
|
|
872
887
|
const safeName = path.basename(file.name);
|
|
888
|
+
const ext = path.extname(safeName).toLowerCase();
|
|
889
|
+
if (!ALLOWED_SKILL_EXTENSIONS.has(ext)) {
|
|
890
|
+
console.warn('[fetch] Skipped skill file with disallowed extension: ' + safeName);
|
|
891
|
+
skippedFiles.push(safeName);
|
|
892
|
+
continue;
|
|
893
|
+
}
|
|
894
|
+
if (Buffer.byteLength(file.content, 'utf8') > MAX_SKILL_FILE_BYTES) {
|
|
895
|
+
console.warn('[fetch] Skipped skill file exceeding ' + MAX_SKILL_FILE_BYTES + ' bytes: ' + safeName);
|
|
896
|
+
skippedFiles.push(safeName);
|
|
897
|
+
continue;
|
|
898
|
+
}
|
|
873
899
|
fs.writeFileSync(path.join(outDir, safeName), file.content, 'utf8');
|
|
874
900
|
}
|
|
875
901
|
|
|
@@ -878,9 +904,9 @@ async function main() {
|
|
|
878
904
|
console.log(' Version: ' + (data.version || '?'));
|
|
879
905
|
console.log(' Files: SKILL.md' + (bundled.length > 0 ? ', ' + bundled.map(f => f.name).join(', ') : ''));
|
|
880
906
|
if (data.already_purchased) {
|
|
881
|
-
console.log('
|
|
907
|
+
console.log(' Fetch cost: free (already purchased)');
|
|
882
908
|
} else {
|
|
883
|
-
console.log('
|
|
909
|
+
console.log(' Fetch cost: ' + (data.credit_cost || 0) + ' credits');
|
|
884
910
|
}
|
|
885
911
|
} catch (error) {
|
|
886
912
|
if (error && error.name === 'TimeoutError') {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@evomap/evolver",
|
|
3
|
-
"version": "1.69.
|
|
3
|
+
"version": "1.69.21",
|
|
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": {
|