@evomap/evolver 1.83.0 → 1.84.1
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/index.js +7 -8
- package/package.json +3 -2
- package/src/atp/hubClient.js +3 -1
- package/src/evolve/guards.js +1 -1
- package/src/evolve/pipeline/collect.js +1 -1
- package/src/evolve/pipeline/dispatch.js +1 -1
- package/src/evolve/pipeline/enrich.js +1 -1
- package/src/evolve/pipeline/hub.js +1 -1
- package/src/evolve/pipeline/select.js +1 -1
- package/src/evolve/pipeline/signals.js +1 -1
- package/src/evolve/utils.js +1 -1
- package/src/evolve.js +1 -1
- package/src/forceUpdate.js +5 -21
- 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/epigenetics.js +1 -1
- package/src/gep/explore.js +1 -1
- package/src/gep/gitOps.js +0 -5
- package/src/gep/hash.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/learningSignals.js +1 -1
- package/src/gep/mailboxTransport.js +8 -5
- 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/openPRRegistry.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/recallVerifier.js +1 -1
- package/src/gep/reflection.js +1 -1
- package/src/gep/sanitize.js +2 -1
- package/src/gep/selector.js +1 -1
- package/src/gep/selfPR.js +0 -2
- package/src/gep/skillDistiller.js +1 -1
- package/src/gep/solidify.js +1 -1
- package/src/gep/strategy.js +1 -1
- package/src/ops/health_check.js +1 -11
- package/src/ops/lifecycle.js +1 -3
- package/src/proxy/server/http.js +16 -1
- package/src/proxy/server/settings.js +9 -2
- package/src/webui/observer/interactions.js +22 -16
- package/scripts/check_wrapper_compat.js +0 -113
- package/src/gep/.integrity +0 -0
- package/src/gep/integrityCheck.js +0 -1
- package/src/gep/shield.js +0 -1
package/index.js
CHANGED
|
@@ -129,9 +129,9 @@ class CycleTimeoutError extends Error {
|
|
|
129
129
|
// in detached mode. So suicide-respawn (cycles >= max, RSS over budget, or the
|
|
130
130
|
// new cycle hard-timeout) opens a new cmd popup on every restart. We now skip
|
|
131
131
|
// the in-process detached spawn on Windows by default and rely on an external
|
|
132
|
-
// supervisor (
|
|
133
|
-
//
|
|
134
|
-
//
|
|
132
|
+
// supervisor (NSSM, pm2-windows, etc.) to respawn the daemon on non-zero exit.
|
|
133
|
+
// Users who insist can opt back in with EVOLVER_SUICIDE_WINDOWS=true (and accept
|
|
134
|
+
// the popups).
|
|
135
135
|
function spawnReplacementProcess({ reason, args, logPath }) {
|
|
136
136
|
const isWindows = process.platform === 'win32';
|
|
137
137
|
const allowOnWindows = parseBoolEnv(process.env.EVOLVER_SUICIDE_WINDOWS, false);
|
|
@@ -140,7 +140,7 @@ function spawnReplacementProcess({ reason, args, logPath }) {
|
|
|
140
140
|
'[Daemon] Skipping in-process respawn on Windows (' + reason + '). ' +
|
|
141
141
|
'Native Node spawn(detached, windowsHide) opens a cmd popup on every restart (Issue #528). ' +
|
|
142
142
|
'Set EVOLVER_SUICIDE_WINDOWS=true to opt back in. ' +
|
|
143
|
-
'Recommended: run evolver under
|
|
143
|
+
'Recommended: run evolver under an external supervisor (NSSM, pm2-windows, etc.) so it restarts on exit.'
|
|
144
144
|
);
|
|
145
145
|
return { spawned: false, reason: 'windows_default_skip' };
|
|
146
146
|
}
|
|
@@ -372,8 +372,7 @@ async function main() {
|
|
|
372
372
|
const idleThresholdMs = parseMs(process.env.EVOLVER_IDLE_THRESHOLD_MS, 500);
|
|
373
373
|
const pendingSleepMs = parseMs(
|
|
374
374
|
process.env.EVOLVE_PENDING_SLEEP_MS ||
|
|
375
|
-
process.env.EVOLVE_MIN_INTERVAL
|
|
376
|
-
process.env.FEISHU_EVOLVER_INTERVAL,
|
|
375
|
+
process.env.EVOLVE_MIN_INTERVAL,
|
|
377
376
|
120000
|
|
378
377
|
);
|
|
379
378
|
|
|
@@ -732,7 +731,7 @@ async function main() {
|
|
|
732
731
|
const summary = summaryFlag ? summaryFlag.slice('--summary='.length) : null;
|
|
733
732
|
|
|
734
733
|
try {
|
|
735
|
-
const res = solidify({
|
|
734
|
+
const res = await solidify({
|
|
736
735
|
intent: intent || undefined,
|
|
737
736
|
summary: summary || undefined,
|
|
738
737
|
dryRun,
|
|
@@ -982,7 +981,7 @@ async function main() {
|
|
|
982
981
|
if (args.includes('--approve')) {
|
|
983
982
|
console.log('\n[Review] Approved. Running solidify...\n');
|
|
984
983
|
try {
|
|
985
|
-
const res = solidify({
|
|
984
|
+
const res = await solidify({
|
|
986
985
|
intent: lastRun.intent || undefined,
|
|
987
986
|
rollbackOnFailure: true,
|
|
988
987
|
});
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@evomap/evolver",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.84.1",
|
|
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": {
|
|
@@ -33,9 +33,10 @@
|
|
|
33
33
|
"a2a:promote": "node scripts/a2a_promote.js"
|
|
34
34
|
},
|
|
35
35
|
"engines": {
|
|
36
|
-
"node": ">=22"
|
|
36
|
+
"node": ">=22.12"
|
|
37
37
|
},
|
|
38
38
|
"dependencies": {
|
|
39
|
+
"@evomap/gep-sdk": "^1.2.0",
|
|
39
40
|
"dotenv": "^16.4.7"
|
|
40
41
|
},
|
|
41
42
|
"devDependencies": {
|
package/src/atp/hubClient.js
CHANGED
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
|
|
17
17
|
const http = require('http');
|
|
18
18
|
const { getHubUrl, buildHubHeaders, getNodeId } = require('../gep/a2aProtocol');
|
|
19
|
-
const { getProxyUrl } = require('../proxy/server/settings');
|
|
19
|
+
const { getProxyUrl, getProxyToken } = require('../proxy/server/settings');
|
|
20
20
|
|
|
21
21
|
function _isProxyMode() {
|
|
22
22
|
if (process.env.EVOMAP_PROXY === '1') return true;
|
|
@@ -35,6 +35,8 @@ function _proxyRequest(method, path, body, timeoutMs) {
|
|
|
35
35
|
const payload = body ? JSON.stringify(body) : '';
|
|
36
36
|
const headers = { 'Content-Type': 'application/json' };
|
|
37
37
|
if (payload) headers['Content-Length'] = Buffer.byteLength(payload);
|
|
38
|
+
const proxyToken = getProxyToken();
|
|
39
|
+
if (proxyToken) headers['Authorization'] = 'Bearer ' + proxyToken;
|
|
38
40
|
|
|
39
41
|
const req = http.request(
|
|
40
42
|
{
|