@nxuss/lemma 0.3.3 → 0.4.0

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 (49) hide show
  1. package/README.md +42 -330
  2. package/dashboard/README.md +351 -0
  3. package/dashboard/dist/assets/index-CIx8ECj8.css +1 -0
  4. package/dashboard/dist/assets/index-zTlIPJOp.js +478 -0
  5. package/dashboard/dist/assets/index-zTlIPJOp.js.map +1 -0
  6. package/dashboard/dist/index.html +14 -0
  7. package/dist/cjs/cloud/TenantCache.d.ts +1 -0
  8. package/dist/cjs/cloud/TenantCache.d.ts.map +1 -1
  9. package/dist/cjs/cloud/TenantCache.js +25 -3
  10. package/dist/cjs/cloud/TenantCache.js.map +1 -1
  11. package/dist/cjs/config/index.d.ts.map +1 -1
  12. package/dist/cjs/config/index.js +4 -0
  13. package/dist/cjs/config/index.js.map +1 -1
  14. package/dist/cjs/index.d.ts +3 -1
  15. package/dist/cjs/index.d.ts.map +1 -1
  16. package/dist/cjs/index.js +29 -0
  17. package/dist/cjs/index.js.map +1 -1
  18. package/dist/cjs/observability/IdeContextSync.d.ts +39 -0
  19. package/dist/cjs/observability/IdeContextSync.d.ts.map +1 -0
  20. package/dist/cjs/observability/IdeContextSync.js +169 -0
  21. package/dist/cjs/observability/IdeContextSync.js.map +1 -0
  22. package/dist/cjs/types/index.d.ts +11 -0
  23. package/dist/cjs/types/index.d.ts.map +1 -1
  24. package/dist/cjs/types/index.js.map +1 -1
  25. package/dist/esm/cloud/TenantCache.d.ts +1 -0
  26. package/dist/esm/cloud/TenantCache.d.ts.map +1 -1
  27. package/dist/esm/cloud/TenantCache.js +25 -3
  28. package/dist/esm/cloud/TenantCache.js.map +1 -1
  29. package/dist/esm/config/index.d.ts.map +1 -1
  30. package/dist/esm/config/index.js +4 -0
  31. package/dist/esm/config/index.js.map +1 -1
  32. package/dist/esm/index.d.ts +3 -1
  33. package/dist/esm/index.d.ts.map +1 -1
  34. package/dist/esm/index.js +29 -0
  35. package/dist/esm/index.js.map +1 -1
  36. package/dist/esm/observability/IdeContextSync.d.ts +39 -0
  37. package/dist/esm/observability/IdeContextSync.d.ts.map +1 -0
  38. package/dist/esm/observability/IdeContextSync.js +162 -0
  39. package/dist/esm/observability/IdeContextSync.js.map +1 -0
  40. package/dist/esm/types/index.d.ts +11 -0
  41. package/dist/esm/types/index.d.ts.map +1 -1
  42. package/dist/esm/types/index.js.map +1 -1
  43. package/lemma-proxy.cjs +66 -12
  44. package/package.json +15 -13
  45. package/src/cloud/CloudSyncClient.js +35 -0
  46. package/src/protocol/README.md +576 -0
  47. package/src/proxy/ComplexityRouter.js +37 -0
  48. package/src/security/SemanticScrubber.js +54 -0
  49. package/src/speculative/worker.js +96 -0
@@ -0,0 +1,96 @@
1
+ /**
2
+ * Worker Thread Script - Speculative Execution v2.0
3
+ *
4
+ * Executes predicted tasks in the background without blocking the main thread.
5
+ * Each worker receives a prediction and pre-computes the result.
6
+ */
7
+
8
+ const { parentPort, workerData } = require('worker_threads');
9
+ const axios = require('axios');
10
+
11
+ const OLLAMA_URL = process.env.OLLAMA_URL || 'http://localhost:11434';
12
+ const MODEL_NAME = process.env.OLLAMA_MODEL || 'llama3:8b';
13
+
14
+ /**
15
+ * Execute a predicted task
16
+ */
17
+ async function executeTask(task) {
18
+ const startTime = Date.now();
19
+
20
+ try {
21
+ // Simulate task execution using Ollama
22
+ const response = await axios.post(
23
+ `${OLLAMA_URL}/api/generate`,
24
+ {
25
+ model: MODEL_NAME,
26
+ prompt: buildPrompt(task.prediction),
27
+ stream: false,
28
+ options: {
29
+ temperature: 0.7,
30
+ top_p: 0.9,
31
+ num_predict: 1000,
32
+ },
33
+ },
34
+ {
35
+ timeout: 25000, // 25 second timeout (less than pool timeout)
36
+ }
37
+ );
38
+
39
+ const executionTime = Date.now() - startTime;
40
+
41
+ return {
42
+ taskId: task.id,
43
+ prediction: task.prediction,
44
+ result: {
45
+ response: response.data.response,
46
+ model: MODEL_NAME,
47
+ executedAt: Date.now(),
48
+ },
49
+ executionTime,
50
+ success: true,
51
+ };
52
+ } catch (error) {
53
+ const executionTime = Date.now() - startTime;
54
+
55
+ return {
56
+ taskId: task.id,
57
+ prediction: task.prediction,
58
+ result: null,
59
+ executionTime,
60
+ success: false,
61
+ error: error.message,
62
+ };
63
+ }
64
+ }
65
+
66
+ /**
67
+ * Build prompt for the predicted task
68
+ */
69
+ function buildPrompt(prediction) {
70
+ return `Task Type: ${prediction.taskType}
71
+ Context: ${prediction.context}
72
+
73
+ Please execute this task and provide a detailed response.`;
74
+ }
75
+
76
+ /**
77
+ * Handle messages from main thread
78
+ */
79
+ if (parentPort) {
80
+ parentPort.on('message', async (message) => {
81
+ if (message.type === 'execute') {
82
+ const result = await executeTask(message.task);
83
+
84
+ parentPort.postMessage({
85
+ type: 'result',
86
+ result,
87
+ });
88
+ }
89
+ });
90
+
91
+ // Notify ready
92
+ parentPort.postMessage({
93
+ type: 'ready',
94
+ workerId: workerData.workerId,
95
+ });
96
+ }