@weave_protocol/domere 1.0.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.
- package/PLANNING.md +231 -0
- package/README.md +50 -0
- package/dist/anchoring/ethereum.d.ts +135 -0
- package/dist/anchoring/ethereum.d.ts.map +1 -0
- package/dist/anchoring/ethereum.js +474 -0
- package/dist/anchoring/ethereum.js.map +1 -0
- package/dist/anchoring/index.d.ts +93 -0
- package/dist/anchoring/index.d.ts.map +1 -0
- package/dist/anchoring/index.js +184 -0
- package/dist/anchoring/index.js.map +1 -0
- package/dist/anchoring/merkle.d.ts +91 -0
- package/dist/anchoring/merkle.d.ts.map +1 -0
- package/dist/anchoring/merkle.js +203 -0
- package/dist/anchoring/merkle.js.map +1 -0
- package/dist/anchoring/solana.d.ts +85 -0
- package/dist/anchoring/solana.d.ts.map +1 -0
- package/dist/anchoring/solana.js +301 -0
- package/dist/anchoring/solana.js.map +1 -0
- package/dist/constants.d.ts +130 -0
- package/dist/constants.d.ts.map +1 -0
- package/dist/constants.js +536 -0
- package/dist/constants.js.map +1 -0
- package/dist/index.d.ts +13 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +37 -0
- package/dist/index.js.map +1 -0
- package/dist/language/code-analyzer.d.ts +80 -0
- package/dist/language/code-analyzer.d.ts.map +1 -0
- package/dist/language/code-analyzer.js +489 -0
- package/dist/language/code-analyzer.js.map +1 -0
- package/dist/language/detector.d.ts +53 -0
- package/dist/language/detector.d.ts.map +1 -0
- package/dist/language/detector.js +248 -0
- package/dist/language/detector.js.map +1 -0
- package/dist/language/index.d.ts +61 -0
- package/dist/language/index.d.ts.map +1 -0
- package/dist/language/index.js +109 -0
- package/dist/language/index.js.map +1 -0
- package/dist/language/nl-analyzer.d.ts +59 -0
- package/dist/language/nl-analyzer.d.ts.map +1 -0
- package/dist/language/nl-analyzer.js +350 -0
- package/dist/language/nl-analyzer.js.map +1 -0
- package/dist/language/semantic.d.ts +48 -0
- package/dist/language/semantic.d.ts.map +1 -0
- package/dist/language/semantic.js +329 -0
- package/dist/language/semantic.js.map +1 -0
- package/dist/storage/index.d.ts +6 -0
- package/dist/storage/index.d.ts.map +1 -0
- package/dist/storage/index.js +6 -0
- package/dist/storage/index.js.map +1 -0
- package/dist/storage/memory.d.ts +48 -0
- package/dist/storage/memory.d.ts.map +1 -0
- package/dist/storage/memory.js +211 -0
- package/dist/storage/memory.js.map +1 -0
- package/dist/thread/drift.d.ts +43 -0
- package/dist/thread/drift.d.ts.map +1 -0
- package/dist/thread/drift.js +248 -0
- package/dist/thread/drift.js.map +1 -0
- package/dist/thread/index.d.ts +9 -0
- package/dist/thread/index.d.ts.map +1 -0
- package/dist/thread/index.js +9 -0
- package/dist/thread/index.js.map +1 -0
- package/dist/thread/intent.d.ts +68 -0
- package/dist/thread/intent.d.ts.map +1 -0
- package/dist/thread/intent.js +333 -0
- package/dist/thread/intent.js.map +1 -0
- package/dist/thread/manager.d.ts +85 -0
- package/dist/thread/manager.d.ts.map +1 -0
- package/dist/thread/manager.js +305 -0
- package/dist/thread/manager.js.map +1 -0
- package/dist/thread/weave.d.ts +61 -0
- package/dist/thread/weave.d.ts.map +1 -0
- package/dist/thread/weave.js +158 -0
- package/dist/thread/weave.js.map +1 -0
- package/dist/tools/index.d.ts +18 -0
- package/dist/tools/index.d.ts.map +1 -0
- package/dist/tools/index.js +102 -0
- package/dist/tools/index.js.map +1 -0
- package/dist/types.d.ts +466 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +48 -0
- package/dist/types.js.map +1 -0
- package/package.json +24 -0
- package/src/anchoring/ethereum.ts +568 -0
- package/src/anchoring/index.ts +236 -0
- package/src/anchoring/merkle.ts +256 -0
- package/src/anchoring/solana.ts +370 -0
- package/src/constants.ts +566 -0
- package/src/index.ts +43 -0
- package/src/language/code-analyzer.ts +564 -0
- package/src/language/detector.ts +297 -0
- package/src/language/index.ts +129 -0
- package/src/language/nl-analyzer.ts +411 -0
- package/src/language/semantic.ts +385 -0
- package/src/storage/index.ts +6 -0
- package/src/storage/memory.ts +271 -0
- package/src/thread/drift.ts +319 -0
- package/src/thread/index.ts +9 -0
- package/src/thread/intent.ts +409 -0
- package/src/thread/manager.ts +414 -0
- package/src/thread/weave.ts +205 -0
- package/src/tools/index.ts +107 -0
- package/src/types.ts +736 -0
- package/tsconfig.json +19 -0
|
@@ -0,0 +1,333 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Dōmere - The Judge Protocol
|
|
3
|
+
* Intent Analysis
|
|
4
|
+
*/
|
|
5
|
+
import { INTENT_KEYWORDS } from '../constants.js';
|
|
6
|
+
export class IntentAnalyzer {
|
|
7
|
+
/**
|
|
8
|
+
* Analyze intent
|
|
9
|
+
*/
|
|
10
|
+
analyze(intent) {
|
|
11
|
+
const normalized = this.normalize(intent);
|
|
12
|
+
const classification = this.classify(normalized);
|
|
13
|
+
const { actionVerb, targetObject, modifiers } = this.decompose(normalized);
|
|
14
|
+
const constraints = this.extractConstraints(intent);
|
|
15
|
+
const scope = this.assessScope(intent);
|
|
16
|
+
const complexity = this.assessComplexity(intent);
|
|
17
|
+
return {
|
|
18
|
+
raw: intent,
|
|
19
|
+
normalized,
|
|
20
|
+
classification: classification.classification,
|
|
21
|
+
confidence: classification.confidence,
|
|
22
|
+
action_verb: actionVerb,
|
|
23
|
+
target_object: targetObject,
|
|
24
|
+
modifiers,
|
|
25
|
+
constraints,
|
|
26
|
+
entities: this.extractEntities(intent),
|
|
27
|
+
scope,
|
|
28
|
+
complexity,
|
|
29
|
+
};
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Normalize intent text
|
|
33
|
+
*/
|
|
34
|
+
normalize(intent) {
|
|
35
|
+
return intent
|
|
36
|
+
.toLowerCase()
|
|
37
|
+
.replace(/\s+/g, ' ') // Normalize whitespace
|
|
38
|
+
.replace(/[^\w\s.,!?'-]/g, '') // Remove special chars
|
|
39
|
+
.replace(/please\s+/gi, '') // Remove politeness
|
|
40
|
+
.replace(/can you\s+/gi, '')
|
|
41
|
+
.replace(/could you\s+/gi, '')
|
|
42
|
+
.replace(/would you\s+/gi, '')
|
|
43
|
+
.replace(/i want you to\s+/gi, '')
|
|
44
|
+
.replace(/i need you to\s+/gi, '')
|
|
45
|
+
.replace(/i'd like you to\s+/gi, '')
|
|
46
|
+
.trim();
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* Classify intent
|
|
50
|
+
*/
|
|
51
|
+
classify(normalizedIntent) {
|
|
52
|
+
const scores = {
|
|
53
|
+
query: 0,
|
|
54
|
+
mutation: 0,
|
|
55
|
+
deletion: 0,
|
|
56
|
+
execution: 0,
|
|
57
|
+
communication: 0,
|
|
58
|
+
analysis: 0,
|
|
59
|
+
generation: 0,
|
|
60
|
+
unknown: 0,
|
|
61
|
+
};
|
|
62
|
+
// Score based on keywords
|
|
63
|
+
for (const [intent, keywords] of Object.entries(INTENT_KEYWORDS)) {
|
|
64
|
+
for (const keyword of keywords) {
|
|
65
|
+
const regex = new RegExp(`\\b${keyword}\\b`, 'gi');
|
|
66
|
+
const matches = normalizedIntent.match(regex);
|
|
67
|
+
if (matches) {
|
|
68
|
+
scores[intent] += matches.length * 2;
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
// Check question patterns (strong signal for query)
|
|
73
|
+
if (/^(what|where|who|when|how|why|which|is|are|do|does|can|could)\b/i.test(normalizedIntent)) {
|
|
74
|
+
scores.query += 3;
|
|
75
|
+
}
|
|
76
|
+
// Find highest
|
|
77
|
+
let maxClassification = 'unknown';
|
|
78
|
+
let maxScore = 0;
|
|
79
|
+
let totalScore = 0;
|
|
80
|
+
for (const [classification, score] of Object.entries(scores)) {
|
|
81
|
+
totalScore += score;
|
|
82
|
+
if (score > maxScore) {
|
|
83
|
+
maxScore = score;
|
|
84
|
+
maxClassification = classification;
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
const confidence = totalScore > 0 ? maxScore / totalScore : 0;
|
|
88
|
+
return { classification: maxClassification, confidence };
|
|
89
|
+
}
|
|
90
|
+
/**
|
|
91
|
+
* Decompose intent into components
|
|
92
|
+
*/
|
|
93
|
+
decompose(normalizedIntent) {
|
|
94
|
+
const words = normalizedIntent.split(' ');
|
|
95
|
+
let actionVerb;
|
|
96
|
+
let targetObject;
|
|
97
|
+
const modifiers = [];
|
|
98
|
+
// Common action verbs
|
|
99
|
+
const actionVerbs = [
|
|
100
|
+
'get', 'fetch', 'find', 'search', 'retrieve', 'show', 'display', 'list',
|
|
101
|
+
'create', 'make', 'generate', 'build', 'add', 'insert',
|
|
102
|
+
'update', 'change', 'modify', 'edit', 'set',
|
|
103
|
+
'delete', 'remove', 'drop', 'clear',
|
|
104
|
+
'send', 'email', 'message', 'notify',
|
|
105
|
+
'analyze', 'summarize', 'explain', 'compare',
|
|
106
|
+
'run', 'execute', 'start', 'launch',
|
|
107
|
+
];
|
|
108
|
+
// Find action verb
|
|
109
|
+
for (const word of words) {
|
|
110
|
+
if (actionVerbs.includes(word)) {
|
|
111
|
+
actionVerb = word;
|
|
112
|
+
break;
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
// Find target (noun after action verb)
|
|
116
|
+
if (actionVerb) {
|
|
117
|
+
const verbIndex = words.indexOf(actionVerb);
|
|
118
|
+
if (verbIndex < words.length - 1) {
|
|
119
|
+
// Look for noun phrase after verb
|
|
120
|
+
const afterVerb = words.slice(verbIndex + 1);
|
|
121
|
+
// Skip articles and prepositions
|
|
122
|
+
const skipWords = ['the', 'a', 'an', 'to', 'for', 'from', 'in', 'on', 'at'];
|
|
123
|
+
const targetWords = [];
|
|
124
|
+
for (const word of afterVerb) {
|
|
125
|
+
if (skipWords.includes(word))
|
|
126
|
+
continue;
|
|
127
|
+
// Stop at conjunctions or prepositions that indicate end of target
|
|
128
|
+
if (['and', 'or', 'but', 'with', 'using', 'by'].includes(word))
|
|
129
|
+
break;
|
|
130
|
+
targetWords.push(word);
|
|
131
|
+
if (targetWords.length >= 3)
|
|
132
|
+
break; // Limit target length
|
|
133
|
+
}
|
|
134
|
+
targetObject = targetWords.join(' ');
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
// Extract modifiers (adjectives, adverbs)
|
|
138
|
+
const modifierPatterns = [
|
|
139
|
+
/\b(all|every|each|any|some|no)\b/gi,
|
|
140
|
+
/\b(new|old|latest|recent|current)\b/gi,
|
|
141
|
+
/\b(first|last|top|bottom)\s+\d+/gi,
|
|
142
|
+
/\b(quickly|slowly|carefully|automatically)\b/gi,
|
|
143
|
+
/\b(daily|weekly|monthly|yearly)\b/gi,
|
|
144
|
+
];
|
|
145
|
+
for (const pattern of modifierPatterns) {
|
|
146
|
+
const matches = normalizedIntent.match(pattern);
|
|
147
|
+
if (matches) {
|
|
148
|
+
modifiers.push(...matches);
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
return { actionVerb, targetObject, modifiers };
|
|
152
|
+
}
|
|
153
|
+
/**
|
|
154
|
+
* Extract constraints from intent
|
|
155
|
+
*/
|
|
156
|
+
extractConstraints(intent) {
|
|
157
|
+
const constraints = [];
|
|
158
|
+
const intentLower = intent.toLowerCase();
|
|
159
|
+
// Explicit negations
|
|
160
|
+
const negationPatterns = [
|
|
161
|
+
/\b(don't|do not|never|without)\s+([^.,]+)/gi,
|
|
162
|
+
/\b(except|excluding|other than)\s+([^.,]+)/gi,
|
|
163
|
+
/\b(but not|not including)\s+([^.,]+)/gi,
|
|
164
|
+
];
|
|
165
|
+
for (const pattern of negationPatterns) {
|
|
166
|
+
let match;
|
|
167
|
+
while ((match = pattern.exec(intentLower)) !== null) {
|
|
168
|
+
constraints.push(`NOT: ${match[2].trim()}`);
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
// Scope limitations
|
|
172
|
+
const scopePatterns = [
|
|
173
|
+
/\b(only|just|specifically)\s+([^.,]+)/gi,
|
|
174
|
+
/\b(limited to|restricted to)\s+([^.,]+)/gi,
|
|
175
|
+
];
|
|
176
|
+
for (const pattern of scopePatterns) {
|
|
177
|
+
let match;
|
|
178
|
+
while ((match = pattern.exec(intentLower)) !== null) {
|
|
179
|
+
constraints.push(`ONLY: ${match[2].trim()}`);
|
|
180
|
+
}
|
|
181
|
+
}
|
|
182
|
+
// Time constraints
|
|
183
|
+
const timePatterns = [
|
|
184
|
+
/\b(before|after|since|until)\s+([^.,]+)/gi,
|
|
185
|
+
/\b(within|in the last|in the next)\s+(\d+\s+\w+)/gi,
|
|
186
|
+
];
|
|
187
|
+
for (const pattern of timePatterns) {
|
|
188
|
+
let match;
|
|
189
|
+
while ((match = pattern.exec(intentLower)) !== null) {
|
|
190
|
+
constraints.push(`TIME: ${match[0].trim()}`);
|
|
191
|
+
}
|
|
192
|
+
}
|
|
193
|
+
// Quantity constraints
|
|
194
|
+
const quantityPatterns = [
|
|
195
|
+
/\b(at most|at least|exactly|no more than|no less than)\s+(\d+)/gi,
|
|
196
|
+
/\b(maximum|minimum|limit)\s+(?:of\s+)?(\d+)/gi,
|
|
197
|
+
];
|
|
198
|
+
for (const pattern of quantityPatterns) {
|
|
199
|
+
let match;
|
|
200
|
+
while ((match = pattern.exec(intentLower)) !== null) {
|
|
201
|
+
constraints.push(`QUANTITY: ${match[0].trim()}`);
|
|
202
|
+
}
|
|
203
|
+
}
|
|
204
|
+
return constraints;
|
|
205
|
+
}
|
|
206
|
+
/**
|
|
207
|
+
* Extract entities from intent
|
|
208
|
+
*/
|
|
209
|
+
extractEntities(intent) {
|
|
210
|
+
const entities = [];
|
|
211
|
+
// Quoted strings (often specific values)
|
|
212
|
+
const quotedPattern = /["']([^"']+)["']/g;
|
|
213
|
+
let match;
|
|
214
|
+
while ((match = quotedPattern.exec(intent)) !== null) {
|
|
215
|
+
entities.push({
|
|
216
|
+
type: 'custom',
|
|
217
|
+
value: match[1],
|
|
218
|
+
confidence: 0.9,
|
|
219
|
+
position: { start: match.index, end: match.index + match[0].length },
|
|
220
|
+
});
|
|
221
|
+
}
|
|
222
|
+
// Numbers with context
|
|
223
|
+
const numberPattern = /\b(\d+(?:,\d{3})*(?:\.\d+)?)\s*(\w+)?/g;
|
|
224
|
+
while ((match = numberPattern.exec(intent)) !== null) {
|
|
225
|
+
const value = match[1];
|
|
226
|
+
const unit = match[2];
|
|
227
|
+
entities.push({
|
|
228
|
+
type: 'quantity',
|
|
229
|
+
value: unit ? `${value} ${unit}` : value,
|
|
230
|
+
confidence: 0.8,
|
|
231
|
+
position: { start: match.index, end: match.index + match[0].length },
|
|
232
|
+
});
|
|
233
|
+
}
|
|
234
|
+
// Capitalized words (potential proper nouns)
|
|
235
|
+
const properNounPattern = /\b([A-Z][a-z]+(?:\s+[A-Z][a-z]+)*)\b/g;
|
|
236
|
+
while ((match = properNounPattern.exec(intent)) !== null) {
|
|
237
|
+
// Skip if at start of sentence
|
|
238
|
+
if (match.index === 0)
|
|
239
|
+
continue;
|
|
240
|
+
entities.push({
|
|
241
|
+
type: 'custom',
|
|
242
|
+
value: match[1],
|
|
243
|
+
confidence: 0.6,
|
|
244
|
+
position: { start: match.index, end: match.index + match[0].length },
|
|
245
|
+
});
|
|
246
|
+
}
|
|
247
|
+
return entities;
|
|
248
|
+
}
|
|
249
|
+
/**
|
|
250
|
+
* Assess scope of intent
|
|
251
|
+
*/
|
|
252
|
+
assessScope(intent) {
|
|
253
|
+
const intentLower = intent.toLowerCase();
|
|
254
|
+
// Narrow scope indicators
|
|
255
|
+
if (/\b(specific|particular|this|that|single|one)\b/.test(intentLower)) {
|
|
256
|
+
return 'narrow';
|
|
257
|
+
}
|
|
258
|
+
if (/"[^"]+"/.test(intent)) { // Quoted specific values
|
|
259
|
+
return 'narrow';
|
|
260
|
+
}
|
|
261
|
+
// Broad scope indicators
|
|
262
|
+
if (/\b(all|every|entire|whole|complete|everything)\b/.test(intentLower)) {
|
|
263
|
+
return 'broad';
|
|
264
|
+
}
|
|
265
|
+
return 'medium';
|
|
266
|
+
}
|
|
267
|
+
/**
|
|
268
|
+
* Assess complexity of intent
|
|
269
|
+
*/
|
|
270
|
+
assessComplexity(intent) {
|
|
271
|
+
const words = intent.split(/\s+/).length;
|
|
272
|
+
const clauses = intent.split(/[,;]/).length;
|
|
273
|
+
const conjunctions = (intent.match(/\b(and|or|but|then|after|before|while)\b/gi) || []).length;
|
|
274
|
+
// Simple: short, single clause
|
|
275
|
+
if (words < 10 && clauses === 1 && conjunctions === 0) {
|
|
276
|
+
return 'simple';
|
|
277
|
+
}
|
|
278
|
+
// Complex: long, multiple clauses, multiple conjunctions
|
|
279
|
+
if (words > 30 || clauses > 3 || conjunctions > 2) {
|
|
280
|
+
return 'complex';
|
|
281
|
+
}
|
|
282
|
+
return 'moderate';
|
|
283
|
+
}
|
|
284
|
+
/**
|
|
285
|
+
* Compare two intents for similarity
|
|
286
|
+
*/
|
|
287
|
+
compareIntents(intent1, intent2) {
|
|
288
|
+
const norm1 = this.normalize(intent1);
|
|
289
|
+
const norm2 = this.normalize(intent2);
|
|
290
|
+
// Simple word overlap similarity
|
|
291
|
+
const words1 = new Set(norm1.split(' '));
|
|
292
|
+
const words2 = new Set(norm2.split(' '));
|
|
293
|
+
const intersection = new Set([...words1].filter(w => words2.has(w)));
|
|
294
|
+
const union = new Set([...words1, ...words2]);
|
|
295
|
+
return intersection.size / union.size;
|
|
296
|
+
}
|
|
297
|
+
/**
|
|
298
|
+
* Check if intent2 is within scope of intent1
|
|
299
|
+
*/
|
|
300
|
+
isWithinScope(originalIntent, derivedIntent) {
|
|
301
|
+
const original = this.analyze(originalIntent);
|
|
302
|
+
const derived = this.analyze(derivedIntent);
|
|
303
|
+
// Check if classification matches
|
|
304
|
+
if (original.classification !== derived.classification &&
|
|
305
|
+
original.classification !== 'unknown') {
|
|
306
|
+
return false;
|
|
307
|
+
}
|
|
308
|
+
// Check if target is related
|
|
309
|
+
if (original.target_object && derived.target_object) {
|
|
310
|
+
if (!derived.target_object.includes(original.target_object) &&
|
|
311
|
+
!original.target_object.includes(derived.target_object)) {
|
|
312
|
+
// Targets are unrelated
|
|
313
|
+
return false;
|
|
314
|
+
}
|
|
315
|
+
}
|
|
316
|
+
// Check constraints
|
|
317
|
+
for (const constraint of original.constraints) {
|
|
318
|
+
if (constraint.startsWith('NOT:')) {
|
|
319
|
+
const forbidden = constraint.slice(5).toLowerCase();
|
|
320
|
+
if (derived.raw.toLowerCase().includes(forbidden)) {
|
|
321
|
+
return false;
|
|
322
|
+
}
|
|
323
|
+
}
|
|
324
|
+
}
|
|
325
|
+
// Check scope hasn't expanded
|
|
326
|
+
const scopeOrder = ['narrow', 'medium', 'broad'];
|
|
327
|
+
if (scopeOrder.indexOf(derived.scope) > scopeOrder.indexOf(original.scope)) {
|
|
328
|
+
return false;
|
|
329
|
+
}
|
|
330
|
+
return true;
|
|
331
|
+
}
|
|
332
|
+
}
|
|
333
|
+
//# sourceMappingURL=intent.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"intent.js","sourceRoot":"","sources":["../../src/thread/intent.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Dōmere - The Judge Protocol
|
|
3
|
+
* Thread Manager
|
|
4
|
+
*/
|
|
5
|
+
import type { Thread, ThreadOrigin, ThreadHop, ThreadStatus, IDomereStorage, AgentInfo, HopAction, SecurityScanResult } from '../types.js';
|
|
6
|
+
export declare class ThreadManager {
|
|
7
|
+
private storage;
|
|
8
|
+
private languageAnalyzer;
|
|
9
|
+
private intentAnalyzer;
|
|
10
|
+
private driftDetector;
|
|
11
|
+
private weaveSignature;
|
|
12
|
+
constructor(storage: IDomereStorage);
|
|
13
|
+
/**
|
|
14
|
+
* Create a new thread
|
|
15
|
+
*/
|
|
16
|
+
createThread(config: {
|
|
17
|
+
origin: Omit<ThreadOrigin, 'timestamp'>;
|
|
18
|
+
intent: string;
|
|
19
|
+
constraints?: string[];
|
|
20
|
+
metadata?: Record<string, unknown>;
|
|
21
|
+
}): Promise<Thread>;
|
|
22
|
+
/**
|
|
23
|
+
* Add a hop to a thread
|
|
24
|
+
*/
|
|
25
|
+
addHop(config: {
|
|
26
|
+
thread_id: string;
|
|
27
|
+
agent: AgentInfo;
|
|
28
|
+
received_intent: string;
|
|
29
|
+
actions: HopAction[];
|
|
30
|
+
security_scan?: SecurityScanResult;
|
|
31
|
+
sandbox_result?: {
|
|
32
|
+
sandbox_id: string;
|
|
33
|
+
result_id: string;
|
|
34
|
+
status: string;
|
|
35
|
+
summary: string;
|
|
36
|
+
};
|
|
37
|
+
}): Promise<ThreadHop>;
|
|
38
|
+
/**
|
|
39
|
+
* Close a thread
|
|
40
|
+
*/
|
|
41
|
+
closeThread(threadId: string, outcome: 'success' | 'failure' | 'abandoned'): Promise<Thread>;
|
|
42
|
+
/**
|
|
43
|
+
* Get a thread
|
|
44
|
+
*/
|
|
45
|
+
getThread(threadId: string): Promise<Thread | null>;
|
|
46
|
+
/**
|
|
47
|
+
* List threads
|
|
48
|
+
*/
|
|
49
|
+
listThreads(filters?: {
|
|
50
|
+
status?: ThreadStatus;
|
|
51
|
+
origin_type?: ThreadOrigin['type'];
|
|
52
|
+
origin_identity?: string;
|
|
53
|
+
since?: Date;
|
|
54
|
+
until?: Date;
|
|
55
|
+
limit?: number;
|
|
56
|
+
}): Promise<Thread[]>;
|
|
57
|
+
/**
|
|
58
|
+
* Verify thread integrity
|
|
59
|
+
*/
|
|
60
|
+
verifyThread(threadId: string): Promise<{
|
|
61
|
+
valid: boolean;
|
|
62
|
+
errors: string[];
|
|
63
|
+
verified_hops: number;
|
|
64
|
+
total_hops: number;
|
|
65
|
+
}>;
|
|
66
|
+
/**
|
|
67
|
+
* Get thread summary
|
|
68
|
+
*/
|
|
69
|
+
getThreadSummary(threadId: string): Promise<{
|
|
70
|
+
id: string;
|
|
71
|
+
status: ThreadStatus;
|
|
72
|
+
origin: string;
|
|
73
|
+
intent_summary: string;
|
|
74
|
+
hop_count: number;
|
|
75
|
+
total_drift: number;
|
|
76
|
+
has_violations: boolean;
|
|
77
|
+
duration_ms: number;
|
|
78
|
+
merkle_root?: string;
|
|
79
|
+
} | null>;
|
|
80
|
+
private generateThreadId;
|
|
81
|
+
private generateHopId;
|
|
82
|
+
private hashContent;
|
|
83
|
+
private computeMerkleRoot;
|
|
84
|
+
}
|
|
85
|
+
//# sourceMappingURL=manager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../src/thread/manager.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EACV,MAAM,EACN,YAAY,EAEZ,SAAS,EACT,YAAY,EACZ,cAAc,EACd,SAAS,EACT,SAAS,EAGT,kBAAkB,EACnB,MAAM,aAAa,CAAC;AAWrB,qBAAa,aAAa;IACxB,OAAO,CAAC,OAAO,CAAiB;IAChC,OAAO,CAAC,gBAAgB,CAA0B;IAClD,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,cAAc,CAAiB;gBAE3B,OAAO,EAAE,cAAc;IAQnC;;OAEG;IACG,YAAY,CAAC,MAAM,EAAE;QACzB,MAAM,EAAE,IAAI,CAAC,YAAY,EAAE,WAAW,CAAC,CAAC;QACxC,MAAM,EAAE,MAAM,CAAC;QACf,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;QACvB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KACpC,GAAG,OAAO,CAAC,MAAM,CAAC;IAgDnB;;OAEG;IACG,MAAM,CAAC,MAAM,EAAE;QACnB,SAAS,EAAE,MAAM,CAAC;QAClB,KAAK,EAAE,SAAS,CAAC;QACjB,eAAe,EAAE,MAAM,CAAC;QACxB,OAAO,EAAE,SAAS,EAAE,CAAC;QACrB,aAAa,CAAC,EAAE,kBAAkB,CAAC;QACnC,cAAc,CAAC,EAAE;YAAE,UAAU,EAAE,MAAM,CAAC;YAAC,SAAS,EAAE,MAAM,CAAC;YAAC,MAAM,EAAE,MAAM,CAAC;YAAC,OAAO,EAAE,MAAM,CAAA;SAAE,CAAC;KAC7F,GAAG,OAAO,CAAC,SAAS,CAAC;IA8FtB;;OAEG;IACG,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,GAAG,SAAS,GAAG,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC;IAqBlG;;OAEG;IACG,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAIzD;;OAEG;IACG,WAAW,CAAC,OAAO,CAAC,EAAE;QAC1B,MAAM,CAAC,EAAE,YAAY,CAAC;QACtB,WAAW,CAAC,EAAE,YAAY,CAAC,MAAM,CAAC,CAAC;QACnC,eAAe,CAAC,EAAE,MAAM,CAAC;QACzB,KAAK,CAAC,EAAE,IAAI,CAAC;QACb,KAAK,CAAC,EAAE,IAAI,CAAC;QACb,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAIrB;;OAEG;IACG,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;QAC5C,KAAK,EAAE,OAAO,CAAC;QACf,MAAM,EAAE,MAAM,EAAE,CAAC;QACjB,aAAa,EAAE,MAAM,CAAC;QACtB,UAAU,EAAE,MAAM,CAAC;KACpB,CAAC;IA0EF;;OAEG;IACG,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;QAChD,EAAE,EAAE,MAAM,CAAC;QACX,MAAM,EAAE,YAAY,CAAC;QACrB,MAAM,EAAE,MAAM,CAAC;QACf,cAAc,EAAE,MAAM,CAAC;QACvB,SAAS,EAAE,MAAM,CAAC;QAClB,WAAW,EAAE,MAAM,CAAC;QACpB,cAAc,EAAE,OAAO,CAAC;QACxB,WAAW,EAAE,MAAM,CAAC;QACpB,WAAW,CAAC,EAAE,MAAM,CAAC;KACtB,GAAG,IAAI,CAAC;IAkCT,OAAO,CAAC,gBAAgB;IAIxB,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,WAAW;IAInB,OAAO,CAAC,iBAAiB;CAuB1B"}
|