@evomap/evolver 1.89.17 → 1.89.19

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 (86) hide show
  1. package/README.ja-JP.md +1 -1
  2. package/README.ko-KR.md +1 -1
  3. package/README.md +1 -1
  4. package/README.zh-CN.md +1 -1
  5. package/index.js +272 -18
  6. package/package.json +7 -2
  7. package/src/adapters/claudeCode.js +16 -18
  8. package/src/adapters/hookAdapter.js +92 -5
  9. package/src/adapters/scripts/evolver-session-start.js +98 -0
  10. package/src/atp/atpExecute.js +3 -1
  11. package/src/atp/hubClient.js +5 -3
  12. package/src/atp/serviceHelper.js +3 -2
  13. package/src/evolve/guards.js +1 -1
  14. package/src/evolve/pipeline/collect.js +1 -1
  15. package/src/evolve/pipeline/dispatch.js +1 -1
  16. package/src/evolve/pipeline/enrich.js +1 -1
  17. package/src/evolve/pipeline/hub.js +1 -1
  18. package/src/evolve/pipeline/select.js +1 -1
  19. package/src/evolve/pipeline/signals.js +1 -1
  20. package/src/evolve/utils.js +1 -1
  21. package/src/evolve.js +1 -1
  22. package/src/gep/a2aProtocol.js +1 -1
  23. package/src/gep/antiAbuseTelemetry.js +1 -1
  24. package/src/gep/autoDistillConv.js +1 -1
  25. package/src/gep/autoDistillLlm.js +1 -1
  26. package/src/gep/candidateEval.js +1 -1
  27. package/src/gep/candidates.js +1 -1
  28. package/src/gep/cliContracts.js +37 -1
  29. package/src/gep/contentHash.js +1 -1
  30. package/src/gep/conversationDistiller.js +1 -1
  31. package/src/gep/conversationSniffer.js +1 -1
  32. package/src/gep/crypto.js +1 -1
  33. package/src/gep/curriculum.js +1 -1
  34. package/src/gep/deviceId.js +1 -1
  35. package/src/gep/directoryClient.js +7 -3
  36. package/src/gep/envFingerprint.js +1 -1
  37. package/src/gep/epigenetics.js +1 -1
  38. package/src/gep/execBridge.js +1 -1
  39. package/src/gep/explore.js +1 -1
  40. package/src/gep/hash.js +1 -1
  41. package/src/gep/hubFetch.js +1 -1
  42. package/src/gep/hubReview.js +1 -1
  43. package/src/gep/hubSearch.js +1 -1
  44. package/src/gep/hubVerify.js +1 -1
  45. package/src/gep/learningSignals.js +1 -1
  46. package/src/gep/memoryGraph.js +1 -1
  47. package/src/gep/memoryGraphAdapter.js +1 -1
  48. package/src/gep/mutation.js +1 -1
  49. package/src/gep/narrativeMemory.js +1 -1
  50. package/src/gep/oauthLogin.js +3 -5
  51. package/src/gep/openPRRegistry.js +1 -1
  52. package/src/gep/personality.js +1 -1
  53. package/src/gep/policyCheck.js +1 -1
  54. package/src/gep/privacyClient.js +28 -10
  55. package/src/gep/prompt.js +1 -1
  56. package/src/gep/recallInject.js +1 -1
  57. package/src/gep/recallVerifier.js +1 -1
  58. package/src/gep/reflection.js +1 -1
  59. package/src/gep/savingsCore.js +1 -1
  60. package/src/gep/selector.js +1 -1
  61. package/src/gep/skill2gep.js +329 -43
  62. package/src/gep/skill2gepAudit.js +303 -0
  63. package/src/gep/skillDistiller.js +1 -1
  64. package/src/gep/skillPublisher.js +8 -3
  65. package/src/gep/solidify.js +1 -1
  66. package/src/gep/strategy.js +1 -1
  67. package/src/gep/taskReceiver.js +3 -2
  68. package/src/gep/tokenSavings.js +1 -1
  69. package/src/gep/trajectoryExport.js +1 -0
  70. package/src/gep/validator/index.js +7 -2
  71. package/src/gep/validator/reporter.js +7 -2
  72. package/src/gep/validator/stakeBootstrap.js +7 -2
  73. package/src/gep/workspaceKeychain.js +1 -1
  74. package/src/proxy/clientSettings.js +405 -0
  75. package/src/proxy/extensions/traceControl.js +1 -1
  76. package/src/proxy/index.js +13 -5
  77. package/src/proxy/inject.js +1 -1
  78. package/src/proxy/lifecycle/manager.js +82 -16
  79. package/src/proxy/mailbox/state.js +207 -0
  80. package/src/proxy/mailbox/store.js +164 -64
  81. package/src/proxy/router/messages_route.js +56 -4
  82. package/src/proxy/server/http.js +40 -6
  83. package/src/proxy/sync/inbound.js +31 -12
  84. package/src/proxy/sync/outbound.js +164 -24
  85. package/src/proxy/trace/extractor.js +1 -1
  86. package/src/proxy/trace/usage.js +1 -1
@@ -4,17 +4,29 @@
4
4
  // status polling, and result retrieval.
5
5
  // ---------------------------------------------------------------------------
6
6
 
7
- const { getNodeId, buildHubHeaders } = require('./a2aProtocol');
7
+ const { getNodeId, buildHubHeaders, buildNodeScopedHubHeaders } = require('./a2aProtocol');
8
8
  const { generateKey, encrypt, decrypt, pack, unpack } = require('./crypto');
9
9
  const { resolveHubUrl } = require('../config');
10
10
  const { hubFetch } = require('./hubFetch');
11
11
 
12
12
  const PRIVACY_TIMEOUT_MS = 15000;
13
13
 
14
+ function buildPrivacyNodeHeaders() {
15
+ const buildHeaders = buildNodeScopedHubHeaders || buildHubHeaders;
16
+ return buildHeaders();
17
+ }
18
+
14
19
  function privacyUrl(path) {
15
20
  return `${resolveHubUrl().replace(/\/+$/, '')}/a2a/privacy${path}`;
16
21
  }
17
22
 
23
+ function privacyNodeUrl(path) {
24
+ const nodeId = getNodeId();
25
+ if (!nodeId) return null;
26
+ const sep = path.includes('?') ? '&' : '?';
27
+ return privacyUrl(path) + sep + 'node_id=' + encodeURIComponent(nodeId);
28
+ }
29
+
18
30
  /**
19
31
  * Submit a privacy computing task to Hub.
20
32
  * @param {{ title: string, body?: string, signals?: string }} opts
@@ -27,7 +39,7 @@ async function submitPrivacyTask(opts) {
27
39
  try {
28
40
  const res = await hubFetch(privacyUrl('/submit'), {
29
41
  method: 'POST',
30
- headers: Object.assign({ 'Content-Type': 'application/json' }, buildHubHeaders() || {}),
42
+ headers: Object.assign({ 'Content-Type': 'application/json' }, buildPrivacyNodeHeaders() || {}),
31
43
  body: JSON.stringify({ ...opts, node_id: nodeId }),
32
44
  signal: AbortSignal.timeout(PRIVACY_TIMEOUT_MS),
33
45
  });
@@ -65,7 +77,7 @@ async function uploadEncryptedBlob(plaintext, opts) {
65
77
 
66
78
  const res = await hubFetch(privacyUrl('/blob/upload'), {
67
79
  method: 'POST',
68
- headers: Object.assign({ 'Content-Type': 'application/json' }, buildHubHeaders() || {}),
80
+ headers: Object.assign({ 'Content-Type': 'application/json' }, buildPrivacyNodeHeaders() || {}),
69
81
  body,
70
82
  signal: AbortSignal.timeout(PRIVACY_TIMEOUT_MS),
71
83
  });
@@ -95,7 +107,7 @@ async function executeSealedTool(opts) {
95
107
  try {
96
108
  const res = await hubFetch(privacyUrl('/tool/execute'), {
97
109
  method: 'POST',
98
- headers: Object.assign({ 'Content-Type': 'application/json' }, buildHubHeaders() || {}),
110
+ headers: Object.assign({ 'Content-Type': 'application/json' }, buildPrivacyNodeHeaders() || {}),
99
111
  body: JSON.stringify({
100
112
  toolId: opts.toolId,
101
113
  blobId: opts.blobId,
@@ -122,8 +134,10 @@ async function executeSealedTool(opts) {
122
134
  async function getPrivacyStatus(taskId) {
123
135
  if (!taskId) return null;
124
136
  try {
125
- const res = await hubFetch(privacyUrl(`/status/${encodeURIComponent(taskId)}`), {
126
- headers: buildHubHeaders(),
137
+ const url = privacyNodeUrl(`/status/${encodeURIComponent(taskId)}`);
138
+ if (!url) return null;
139
+ const res = await hubFetch(url, {
140
+ headers: buildPrivacyNodeHeaders(),
127
141
  signal: AbortSignal.timeout(PRIVACY_TIMEOUT_MS),
128
142
  });
129
143
  if (!res.ok) return null;
@@ -142,8 +156,10 @@ async function getPrivacyStatus(taskId) {
142
156
  async function getPrivacyResult(taskId, key) {
143
157
  if (!taskId || !key) return null;
144
158
  try {
145
- const res = await hubFetch(privacyUrl(`/result/${encodeURIComponent(taskId)}`), {
146
- headers: buildHubHeaders(),
159
+ const url = privacyNodeUrl(`/result/${encodeURIComponent(taskId)}`);
160
+ if (!url) return null;
161
+ const res = await hubFetch(url, {
162
+ headers: buildPrivacyNodeHeaders(),
147
163
  signal: AbortSignal.timeout(PRIVACY_TIMEOUT_MS),
148
164
  });
149
165
  if (!res.ok) return null;
@@ -166,8 +182,10 @@ async function getPrivacyResult(taskId, key) {
166
182
  */
167
183
  async function getToolTemplates() {
168
184
  try {
169
- const res = await hubFetch(privacyUrl('/tool/templates'), {
170
- headers: buildHubHeaders(),
185
+ const url = privacyNodeUrl('/tool/templates');
186
+ if (!url) return null;
187
+ const res = await hubFetch(url, {
188
+ headers: buildPrivacyNodeHeaders(),
171
189
  signal: AbortSignal.timeout(PRIVACY_TIMEOUT_MS),
172
190
  });
173
191
  if (!res.ok) return null;