@soleri/core 2.4.0 → 2.5.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/dist/brain/brain.d.ts +7 -0
- package/dist/brain/brain.d.ts.map +1 -1
- package/dist/brain/brain.js +56 -9
- package/dist/brain/brain.js.map +1 -1
- package/dist/brain/types.d.ts +2 -2
- package/dist/brain/types.d.ts.map +1 -1
- package/dist/cognee/client.d.ts +3 -0
- package/dist/cognee/client.d.ts.map +1 -1
- package/dist/cognee/client.js +17 -0
- package/dist/cognee/client.js.map +1 -1
- package/dist/cognee/sync-manager.d.ts +94 -0
- package/dist/cognee/sync-manager.d.ts.map +1 -0
- package/dist/cognee/sync-manager.js +293 -0
- package/dist/cognee/sync-manager.js.map +1 -0
- package/dist/curator/curator.d.ts +8 -1
- package/dist/curator/curator.d.ts.map +1 -1
- package/dist/curator/curator.js +64 -1
- package/dist/curator/curator.js.map +1 -1
- package/dist/errors/classify.d.ts +13 -0
- package/dist/errors/classify.d.ts.map +1 -0
- package/dist/errors/classify.js +97 -0
- package/dist/errors/classify.js.map +1 -0
- package/dist/errors/index.d.ts +6 -0
- package/dist/errors/index.d.ts.map +1 -0
- package/dist/errors/index.js +4 -0
- package/dist/errors/index.js.map +1 -0
- package/dist/errors/retry.d.ts +40 -0
- package/dist/errors/retry.d.ts.map +1 -0
- package/dist/errors/retry.js +97 -0
- package/dist/errors/retry.js.map +1 -0
- package/dist/errors/types.d.ts +48 -0
- package/dist/errors/types.d.ts.map +1 -0
- package/dist/errors/types.js +59 -0
- package/dist/errors/types.js.map +1 -0
- package/dist/index.d.ts +25 -5
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +21 -3
- package/dist/index.js.map +1 -1
- package/dist/intake/content-classifier.d.ts +14 -0
- package/dist/intake/content-classifier.d.ts.map +1 -0
- package/dist/intake/content-classifier.js +125 -0
- package/dist/intake/content-classifier.js.map +1 -0
- package/dist/intake/dedup-gate.d.ts +17 -0
- package/dist/intake/dedup-gate.d.ts.map +1 -0
- package/dist/intake/dedup-gate.js +66 -0
- package/dist/intake/dedup-gate.js.map +1 -0
- package/dist/intake/intake-pipeline.d.ts +63 -0
- package/dist/intake/intake-pipeline.d.ts.map +1 -0
- package/dist/intake/intake-pipeline.js +373 -0
- package/dist/intake/intake-pipeline.js.map +1 -0
- package/dist/intake/types.d.ts +65 -0
- package/dist/intake/types.d.ts.map +1 -0
- package/dist/intake/types.js +3 -0
- package/dist/intake/types.js.map +1 -0
- package/dist/intelligence/loader.js +1 -1
- package/dist/intelligence/loader.js.map +1 -1
- package/dist/intelligence/types.d.ts +3 -1
- package/dist/intelligence/types.d.ts.map +1 -1
- package/dist/loop/loop-manager.d.ts +58 -7
- package/dist/loop/loop-manager.d.ts.map +1 -1
- package/dist/loop/loop-manager.js +280 -6
- package/dist/loop/loop-manager.js.map +1 -1
- package/dist/loop/types.d.ts +69 -1
- package/dist/loop/types.d.ts.map +1 -1
- package/dist/loop/types.js +4 -1
- package/dist/loop/types.js.map +1 -1
- package/dist/persistence/index.d.ts +3 -0
- package/dist/persistence/index.d.ts.map +1 -0
- package/dist/persistence/index.js +2 -0
- package/dist/persistence/index.js.map +1 -0
- package/dist/persistence/sqlite-provider.d.ts +25 -0
- package/dist/persistence/sqlite-provider.d.ts.map +1 -0
- package/dist/persistence/sqlite-provider.js +59 -0
- package/dist/persistence/sqlite-provider.js.map +1 -0
- package/dist/persistence/types.d.ts +36 -0
- package/dist/persistence/types.d.ts.map +1 -0
- package/dist/persistence/types.js +8 -0
- package/dist/persistence/types.js.map +1 -0
- package/dist/planning/gap-analysis.d.ts +47 -4
- package/dist/planning/gap-analysis.d.ts.map +1 -1
- package/dist/planning/gap-analysis.js +190 -13
- package/dist/planning/gap-analysis.js.map +1 -1
- package/dist/planning/gap-types.d.ts +1 -1
- package/dist/planning/gap-types.d.ts.map +1 -1
- package/dist/planning/gap-types.js.map +1 -1
- package/dist/planning/planner.d.ts +277 -9
- package/dist/planning/planner.d.ts.map +1 -1
- package/dist/planning/planner.js +611 -46
- package/dist/planning/planner.js.map +1 -1
- package/dist/playbooks/generic/brainstorming.d.ts +9 -0
- package/dist/playbooks/generic/brainstorming.d.ts.map +1 -0
- package/dist/playbooks/generic/brainstorming.js +105 -0
- package/dist/playbooks/generic/brainstorming.js.map +1 -0
- package/dist/playbooks/generic/code-review.d.ts +11 -0
- package/dist/playbooks/generic/code-review.d.ts.map +1 -0
- package/dist/playbooks/generic/code-review.js +176 -0
- package/dist/playbooks/generic/code-review.js.map +1 -0
- package/dist/playbooks/generic/subagent-execution.d.ts +9 -0
- package/dist/playbooks/generic/subagent-execution.d.ts.map +1 -0
- package/dist/playbooks/generic/subagent-execution.js +68 -0
- package/dist/playbooks/generic/subagent-execution.js.map +1 -0
- package/dist/playbooks/generic/systematic-debugging.d.ts +9 -0
- package/dist/playbooks/generic/systematic-debugging.d.ts.map +1 -0
- package/dist/playbooks/generic/systematic-debugging.js +87 -0
- package/dist/playbooks/generic/systematic-debugging.js.map +1 -0
- package/dist/playbooks/generic/tdd.d.ts +9 -0
- package/dist/playbooks/generic/tdd.d.ts.map +1 -0
- package/dist/playbooks/generic/tdd.js +70 -0
- package/dist/playbooks/generic/tdd.js.map +1 -0
- package/dist/playbooks/generic/verification.d.ts +9 -0
- package/dist/playbooks/generic/verification.d.ts.map +1 -0
- package/dist/playbooks/generic/verification.js +74 -0
- package/dist/playbooks/generic/verification.js.map +1 -0
- package/dist/playbooks/index.d.ts +4 -0
- package/dist/playbooks/index.d.ts.map +1 -0
- package/dist/playbooks/index.js +5 -0
- package/dist/playbooks/index.js.map +1 -0
- package/dist/playbooks/playbook-registry.d.ts +42 -0
- package/dist/playbooks/playbook-registry.d.ts.map +1 -0
- package/dist/playbooks/playbook-registry.js +227 -0
- package/dist/playbooks/playbook-registry.js.map +1 -0
- package/dist/playbooks/playbook-seeder.d.ts +47 -0
- package/dist/playbooks/playbook-seeder.d.ts.map +1 -0
- package/dist/playbooks/playbook-seeder.js +104 -0
- package/dist/playbooks/playbook-seeder.js.map +1 -0
- package/dist/playbooks/playbook-types.d.ts +132 -0
- package/dist/playbooks/playbook-types.d.ts.map +1 -0
- package/dist/playbooks/playbook-types.js +12 -0
- package/dist/playbooks/playbook-types.js.map +1 -0
- package/dist/project/project-registry.d.ts.map +1 -1
- package/dist/project/project-registry.js +9 -11
- package/dist/project/project-registry.js.map +1 -1
- package/dist/prompts/index.d.ts +4 -0
- package/dist/prompts/index.d.ts.map +1 -0
- package/dist/prompts/index.js +3 -0
- package/dist/prompts/index.js.map +1 -0
- package/dist/prompts/parser.d.ts +17 -0
- package/dist/prompts/parser.d.ts.map +1 -0
- package/dist/prompts/parser.js +47 -0
- package/dist/prompts/parser.js.map +1 -0
- package/dist/prompts/template-manager.d.ts +25 -0
- package/dist/prompts/template-manager.d.ts.map +1 -0
- package/dist/prompts/template-manager.js +71 -0
- package/dist/prompts/template-manager.js.map +1 -0
- package/dist/prompts/types.d.ts +26 -0
- package/dist/prompts/types.d.ts.map +1 -0
- package/dist/prompts/types.js +5 -0
- package/dist/prompts/types.js.map +1 -0
- package/dist/runtime/admin-extra-ops.d.ts +5 -3
- package/dist/runtime/admin-extra-ops.d.ts.map +1 -1
- package/dist/runtime/admin-extra-ops.js +322 -11
- package/dist/runtime/admin-extra-ops.js.map +1 -1
- package/dist/runtime/admin-ops.d.ts.map +1 -1
- package/dist/runtime/admin-ops.js +10 -3
- package/dist/runtime/admin-ops.js.map +1 -1
- package/dist/runtime/capture-ops.d.ts.map +1 -1
- package/dist/runtime/capture-ops.js +20 -2
- package/dist/runtime/capture-ops.js.map +1 -1
- package/dist/runtime/cognee-sync-ops.d.ts +12 -0
- package/dist/runtime/cognee-sync-ops.d.ts.map +1 -0
- package/dist/runtime/cognee-sync-ops.js +55 -0
- package/dist/runtime/cognee-sync-ops.js.map +1 -0
- package/dist/runtime/core-ops.d.ts +8 -6
- package/dist/runtime/core-ops.d.ts.map +1 -1
- package/dist/runtime/core-ops.js +226 -9
- package/dist/runtime/core-ops.js.map +1 -1
- package/dist/runtime/curator-extra-ops.d.ts +2 -2
- package/dist/runtime/curator-extra-ops.d.ts.map +1 -1
- package/dist/runtime/curator-extra-ops.js +15 -3
- package/dist/runtime/curator-extra-ops.js.map +1 -1
- package/dist/runtime/domain-ops.js +2 -2
- package/dist/runtime/domain-ops.js.map +1 -1
- package/dist/runtime/grading-ops.d.ts.map +1 -1
- package/dist/runtime/grading-ops.js.map +1 -1
- package/dist/runtime/intake-ops.d.ts +14 -0
- package/dist/runtime/intake-ops.d.ts.map +1 -0
- package/dist/runtime/intake-ops.js +110 -0
- package/dist/runtime/intake-ops.js.map +1 -0
- package/dist/runtime/loop-ops.d.ts +5 -4
- package/dist/runtime/loop-ops.d.ts.map +1 -1
- package/dist/runtime/loop-ops.js +84 -12
- package/dist/runtime/loop-ops.js.map +1 -1
- package/dist/runtime/memory-cross-project-ops.d.ts.map +1 -1
- package/dist/runtime/memory-cross-project-ops.js.map +1 -1
- package/dist/runtime/memory-extra-ops.js +5 -5
- package/dist/runtime/memory-extra-ops.js.map +1 -1
- package/dist/runtime/orchestrate-ops.d.ts.map +1 -1
- package/dist/runtime/orchestrate-ops.js +8 -2
- package/dist/runtime/orchestrate-ops.js.map +1 -1
- package/dist/runtime/planning-extra-ops.d.ts +13 -5
- package/dist/runtime/planning-extra-ops.d.ts.map +1 -1
- package/dist/runtime/planning-extra-ops.js +381 -18
- package/dist/runtime/planning-extra-ops.js.map +1 -1
- package/dist/runtime/playbook-ops.d.ts +14 -0
- package/dist/runtime/playbook-ops.d.ts.map +1 -0
- package/dist/runtime/playbook-ops.js +141 -0
- package/dist/runtime/playbook-ops.js.map +1 -0
- package/dist/runtime/project-ops.d.ts.map +1 -1
- package/dist/runtime/project-ops.js +7 -2
- package/dist/runtime/project-ops.js.map +1 -1
- package/dist/runtime/runtime.d.ts.map +1 -1
- package/dist/runtime/runtime.js +27 -8
- package/dist/runtime/runtime.js.map +1 -1
- package/dist/runtime/types.d.ts +8 -0
- package/dist/runtime/types.d.ts.map +1 -1
- package/dist/runtime/vault-extra-ops.d.ts +3 -2
- package/dist/runtime/vault-extra-ops.d.ts.map +1 -1
- package/dist/runtime/vault-extra-ops.js +345 -4
- package/dist/runtime/vault-extra-ops.js.map +1 -1
- package/dist/vault/playbook.d.ts +34 -0
- package/dist/vault/playbook.d.ts.map +1 -0
- package/dist/vault/playbook.js +60 -0
- package/dist/vault/playbook.js.map +1 -0
- package/dist/vault/vault.d.ts +31 -32
- package/dist/vault/vault.d.ts.map +1 -1
- package/dist/vault/vault.js +201 -181
- package/dist/vault/vault.js.map +1 -1
- package/package.json +7 -3
- package/src/__tests__/admin-extra-ops.test.ts +62 -15
- package/src/__tests__/admin-ops.test.ts +2 -2
- package/src/__tests__/brain.test.ts +3 -3
- package/src/__tests__/cognee-integration.test.ts +80 -0
- package/src/__tests__/cognee-sync-manager.test.ts +103 -0
- package/src/__tests__/core-ops.test.ts +30 -4
- package/src/__tests__/curator-extra-ops.test.ts +24 -2
- package/src/__tests__/errors.test.ts +388 -0
- package/src/__tests__/grading-ops.test.ts +28 -7
- package/src/__tests__/intake-pipeline.test.ts +162 -0
- package/src/__tests__/loop-ops.test.ts +74 -3
- package/src/__tests__/memory-cross-project-ops.test.ts +3 -1
- package/src/__tests__/orchestrate-ops.test.ts +8 -3
- package/src/__tests__/persistence.test.ts +225 -0
- package/src/__tests__/planner.test.ts +99 -21
- package/src/__tests__/planning-extra-ops.test.ts +168 -10
- package/src/__tests__/playbook-registry.test.ts +326 -0
- package/src/__tests__/playbook-seeder.test.ts +163 -0
- package/src/__tests__/playbook.test.ts +389 -0
- package/src/__tests__/project-ops.test.ts +18 -4
- package/src/__tests__/template-manager.test.ts +222 -0
- package/src/__tests__/vault-extra-ops.test.ts +82 -7
- package/src/brain/brain.ts +71 -9
- package/src/brain/types.ts +2 -2
- package/src/cognee/client.ts +18 -0
- package/src/cognee/sync-manager.ts +389 -0
- package/src/curator/curator.ts +88 -7
- package/src/errors/classify.ts +102 -0
- package/src/errors/index.ts +5 -0
- package/src/errors/retry.ts +132 -0
- package/src/errors/types.ts +81 -0
- package/src/index.ts +114 -3
- package/src/intake/content-classifier.ts +146 -0
- package/src/intake/dedup-gate.ts +92 -0
- package/src/intake/intake-pipeline.ts +503 -0
- package/src/intake/types.ts +69 -0
- package/src/intelligence/loader.ts +1 -1
- package/src/intelligence/types.ts +3 -1
- package/src/loop/loop-manager.ts +325 -7
- package/src/loop/types.ts +72 -1
- package/src/persistence/index.ts +7 -0
- package/src/persistence/sqlite-provider.ts +62 -0
- package/src/persistence/types.ts +44 -0
- package/src/planning/gap-analysis.ts +286 -17
- package/src/planning/gap-types.ts +4 -1
- package/src/planning/planner.ts +828 -55
- package/src/playbooks/generic/brainstorming.ts +110 -0
- package/src/playbooks/generic/code-review.ts +181 -0
- package/src/playbooks/generic/subagent-execution.ts +74 -0
- package/src/playbooks/generic/systematic-debugging.ts +92 -0
- package/src/playbooks/generic/tdd.ts +75 -0
- package/src/playbooks/generic/verification.ts +79 -0
- package/src/playbooks/index.ts +27 -0
- package/src/playbooks/playbook-registry.ts +284 -0
- package/src/playbooks/playbook-seeder.ts +119 -0
- package/src/playbooks/playbook-types.ts +162 -0
- package/src/project/project-registry.ts +29 -17
- package/src/prompts/index.ts +3 -0
- package/src/prompts/parser.ts +59 -0
- package/src/prompts/template-manager.ts +77 -0
- package/src/prompts/types.ts +28 -0
- package/src/runtime/admin-extra-ops.ts +358 -13
- package/src/runtime/admin-ops.ts +17 -6
- package/src/runtime/capture-ops.ts +25 -6
- package/src/runtime/cognee-sync-ops.ts +63 -0
- package/src/runtime/core-ops.ts +258 -8
- package/src/runtime/curator-extra-ops.ts +17 -3
- package/src/runtime/domain-ops.ts +2 -2
- package/src/runtime/grading-ops.ts +11 -2
- package/src/runtime/intake-ops.ts +126 -0
- package/src/runtime/loop-ops.ts +96 -13
- package/src/runtime/memory-cross-project-ops.ts +1 -2
- package/src/runtime/memory-extra-ops.ts +5 -5
- package/src/runtime/orchestrate-ops.ts +8 -2
- package/src/runtime/planning-extra-ops.ts +414 -23
- package/src/runtime/playbook-ops.ts +169 -0
- package/src/runtime/project-ops.ts +9 -3
- package/src/runtime/runtime.ts +35 -9
- package/src/runtime/types.ts +8 -0
- package/src/runtime/vault-extra-ops.ts +385 -4
- package/src/vault/playbook.ts +87 -0
- package/src/vault/vault.ts +301 -235
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Error classifier — converts any thrown value into a typed SoleriError.
|
|
3
|
+
*
|
|
4
|
+
* Maps HTTP status codes, network error codes, and message patterns
|
|
5
|
+
* to the appropriate SoleriErrorCode.
|
|
6
|
+
*/
|
|
7
|
+
import { SoleriError, SoleriErrorCode } from './types.js';
|
|
8
|
+
function toErrorLike(error) {
|
|
9
|
+
if (error instanceof SoleriError)
|
|
10
|
+
return error;
|
|
11
|
+
if (error instanceof Error)
|
|
12
|
+
return error;
|
|
13
|
+
if (typeof error === 'object' && error !== null)
|
|
14
|
+
return error;
|
|
15
|
+
return { message: String(error) };
|
|
16
|
+
}
|
|
17
|
+
function getHttpStatus(e) {
|
|
18
|
+
return e.status ?? e.statusCode;
|
|
19
|
+
}
|
|
20
|
+
function classifyByHttpStatus(status) {
|
|
21
|
+
if (status === 401 || status === 403)
|
|
22
|
+
return SoleriErrorCode.AUTH;
|
|
23
|
+
if (status === 404)
|
|
24
|
+
return SoleriErrorCode.RESOURCE_NOT_FOUND;
|
|
25
|
+
if (status === 408)
|
|
26
|
+
return SoleriErrorCode.TIMEOUT;
|
|
27
|
+
if (status === 429)
|
|
28
|
+
return SoleriErrorCode.RATE_LIMIT;
|
|
29
|
+
if (status === 422)
|
|
30
|
+
return SoleriErrorCode.VALIDATION;
|
|
31
|
+
if (status >= 500 && status < 600)
|
|
32
|
+
return SoleriErrorCode.INTERNAL;
|
|
33
|
+
return undefined;
|
|
34
|
+
}
|
|
35
|
+
const NETWORK_CODES = new Set(['ECONNREFUSED', 'ENOTFOUND', 'ECONNRESET', 'EPIPE', 'EHOSTUNREACH']);
|
|
36
|
+
const TIMEOUT_CODES = new Set(['ETIMEDOUT', 'ESOCKETTIMEDOUT', 'UND_ERR_CONNECT_TIMEOUT']);
|
|
37
|
+
function classifyByErrorCode(code) {
|
|
38
|
+
if (!code)
|
|
39
|
+
return undefined;
|
|
40
|
+
if (NETWORK_CODES.has(code))
|
|
41
|
+
return SoleriErrorCode.NETWORK;
|
|
42
|
+
if (TIMEOUT_CODES.has(code))
|
|
43
|
+
return SoleriErrorCode.TIMEOUT;
|
|
44
|
+
return undefined;
|
|
45
|
+
}
|
|
46
|
+
const MESSAGE_PATTERNS = [
|
|
47
|
+
[/overloaded|capacity|model.*busy/i, SoleriErrorCode.LLM_OVERLOAD],
|
|
48
|
+
[/timeout|timed?\s*out/i, SoleriErrorCode.TIMEOUT],
|
|
49
|
+
[/vault|database|sqlite/i, SoleriErrorCode.VAULT_UNREACHABLE],
|
|
50
|
+
[/invalid|validation|schema/i, SoleriErrorCode.VALIDATION],
|
|
51
|
+
[/config(uration)?|missing.*key|env/i, SoleriErrorCode.CONFIG_ERROR],
|
|
52
|
+
[/auth(entication|orization)?|forbidden|denied|unauthorized/i, SoleriErrorCode.AUTH],
|
|
53
|
+
[/not\s*found|404|no\s+such/i, SoleriErrorCode.RESOURCE_NOT_FOUND],
|
|
54
|
+
[/rate\s*limit|too\s+many\s+requests|throttl/i, SoleriErrorCode.RATE_LIMIT],
|
|
55
|
+
[/network|connect|socket|dns/i, SoleriErrorCode.NETWORK],
|
|
56
|
+
];
|
|
57
|
+
function classifyByMessage(message) {
|
|
58
|
+
if (!message)
|
|
59
|
+
return undefined;
|
|
60
|
+
for (const [pattern, code] of MESSAGE_PATTERNS) {
|
|
61
|
+
if (pattern.test(message))
|
|
62
|
+
return code;
|
|
63
|
+
}
|
|
64
|
+
return undefined;
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* Classify any thrown value into a SoleriError.
|
|
68
|
+
* If the value is already a SoleriError, returns it as-is.
|
|
69
|
+
*/
|
|
70
|
+
export function classifyError(error) {
|
|
71
|
+
if (error instanceof SoleriError)
|
|
72
|
+
return error;
|
|
73
|
+
const e = toErrorLike(error);
|
|
74
|
+
const originalError = error instanceof Error ? error : undefined;
|
|
75
|
+
const message = e.message ?? 'Unknown error';
|
|
76
|
+
// 1. HTTP status code
|
|
77
|
+
const httpStatus = getHttpStatus(e);
|
|
78
|
+
if (httpStatus !== undefined) {
|
|
79
|
+
const code = classifyByHttpStatus(httpStatus);
|
|
80
|
+
if (code)
|
|
81
|
+
return new SoleriError(message, code, { cause: originalError, context: { httpStatus } });
|
|
82
|
+
}
|
|
83
|
+
// 2. Node.js error code
|
|
84
|
+
const errCode = classifyByErrorCode(e.code);
|
|
85
|
+
if (errCode)
|
|
86
|
+
return new SoleriError(message, errCode, {
|
|
87
|
+
cause: originalError,
|
|
88
|
+
context: { errorCode: e.code },
|
|
89
|
+
});
|
|
90
|
+
// 3. Message pattern matching
|
|
91
|
+
const msgCode = classifyByMessage(message);
|
|
92
|
+
if (msgCode)
|
|
93
|
+
return new SoleriError(message, msgCode, { cause: originalError });
|
|
94
|
+
// 4. Default: permanent INTERNAL
|
|
95
|
+
return new SoleriError(message, SoleriErrorCode.INTERNAL, { cause: originalError });
|
|
96
|
+
}
|
|
97
|
+
//# sourceMappingURL=classify.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"classify.js","sourceRoot":"","sources":["../../src/errors/classify.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export { SoleriErrorCode, SoleriError, ok, err, isOk, isErr } from './types.js';
|
|
2
|
+
export type { ErrorClassification, Result, SoleriErrorOptions } from './types.js';
|
|
3
|
+
export { classifyError } from './classify.js';
|
|
4
|
+
export { retryWithPreset, shouldRetry, getRetryDelay, RETRY_PRESETS } from './retry.js';
|
|
5
|
+
export type { RetryPreset, RetryConfig, RetryOptions } from './retry.js';
|
|
6
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/errors/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAChF,YAAY,EAAE,mBAAmB,EAAE,MAAM,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAClF,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AACxF,YAAY,EAAE,WAAW,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/errors/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAEhF,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Retry presets with exponential backoff + jitter.
|
|
3
|
+
*
|
|
4
|
+
* Three presets map to different execution contexts:
|
|
5
|
+
* - fast: quick API calls, 3 attempts, short waits
|
|
6
|
+
* - normal: standard operations, 10 attempts, moderate waits
|
|
7
|
+
* - patient: batch/pipeline work, 25 attempts, long waits
|
|
8
|
+
*/
|
|
9
|
+
import { SoleriError, type Result } from './types.js';
|
|
10
|
+
export type RetryPreset = 'fast' | 'normal' | 'patient';
|
|
11
|
+
export interface RetryConfig {
|
|
12
|
+
initialIntervalMs: number;
|
|
13
|
+
maxIntervalMs: number;
|
|
14
|
+
maxAttempts: number;
|
|
15
|
+
backoffMultiplier: number;
|
|
16
|
+
}
|
|
17
|
+
export interface RetryOptions {
|
|
18
|
+
onRetry?: (error: SoleriError, attempt: number, delayMs: number) => void;
|
|
19
|
+
signal?: AbortSignal;
|
|
20
|
+
}
|
|
21
|
+
export declare const RETRY_PRESETS: Record<RetryPreset, RetryConfig>;
|
|
22
|
+
/**
|
|
23
|
+
* Check if a classified error should be retried at the given attempt.
|
|
24
|
+
*/
|
|
25
|
+
export declare function shouldRetry(error: SoleriError, attempt: number, preset: RetryPreset): boolean;
|
|
26
|
+
/**
|
|
27
|
+
* Calculate retry delay with exponential backoff + jitter.
|
|
28
|
+
* Jitter adds ±25% to prevent thundering herd.
|
|
29
|
+
*/
|
|
30
|
+
export declare function getRetryDelay(attempt: number, preset: RetryPreset): number;
|
|
31
|
+
/**
|
|
32
|
+
* Retry an async operation with a named preset.
|
|
33
|
+
*
|
|
34
|
+
* - On success: returns ok(result)
|
|
35
|
+
* - On permanent/fixable error: returns err() immediately
|
|
36
|
+
* - On retryable error: retries up to maxAttempts with backoff
|
|
37
|
+
* - On exhaustion: returns err() with last error
|
|
38
|
+
*/
|
|
39
|
+
export declare function retryWithPreset<T>(fn: () => Promise<T>, preset: RetryPreset, options?: RetryOptions): Promise<Result<T>>;
|
|
40
|
+
//# sourceMappingURL=retry.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"retry.d.ts","sourceRoot":"","sources":["../../src/errors/retry.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,EAAE,WAAW,EAAE,KAAK,MAAM,EAAW,MAAM,YAAY,CAAC;AAI/D,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,QAAQ,GAAG,SAAS,CAAC;AAExD,MAAM,WAAW,WAAW;IAC1B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,iBAAiB,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,WAAW,YAAY;IAC3B,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IACzE,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AAID,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,WAAW,EAAE,WAAW,CAc1D,CAAC;AAIF;;GAEG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,GAAG,OAAO,CAG7F;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,GAAG,MAAM,CAO1E;AAsBD;;;;;;;GAOG;AACH,wBAAsB,eAAe,CAAC,CAAC,EACrC,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EACpB,MAAM,EAAE,WAAW,EACnB,OAAO,CAAC,EAAE,YAAY,GACrB,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CA2BpB"}
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Retry presets with exponential backoff + jitter.
|
|
3
|
+
*
|
|
4
|
+
* Three presets map to different execution contexts:
|
|
5
|
+
* - fast: quick API calls, 3 attempts, short waits
|
|
6
|
+
* - normal: standard operations, 10 attempts, moderate waits
|
|
7
|
+
* - patient: batch/pipeline work, 25 attempts, long waits
|
|
8
|
+
*/
|
|
9
|
+
import { classifyError } from './classify.js';
|
|
10
|
+
import { SoleriError, ok, err } from './types.js';
|
|
11
|
+
// ─── Presets ───────────────────────────────────────────────────────────
|
|
12
|
+
export const RETRY_PRESETS = {
|
|
13
|
+
fast: { initialIntervalMs: 1_000, maxIntervalMs: 10_000, maxAttempts: 3, backoffMultiplier: 2 },
|
|
14
|
+
normal: {
|
|
15
|
+
initialIntervalMs: 10_000,
|
|
16
|
+
maxIntervalMs: 120_000,
|
|
17
|
+
maxAttempts: 10,
|
|
18
|
+
backoffMultiplier: 2,
|
|
19
|
+
},
|
|
20
|
+
patient: {
|
|
21
|
+
initialIntervalMs: 60_000,
|
|
22
|
+
maxIntervalMs: 900_000,
|
|
23
|
+
maxAttempts: 25,
|
|
24
|
+
backoffMultiplier: 1.5,
|
|
25
|
+
},
|
|
26
|
+
};
|
|
27
|
+
// ─── Helpers ───────────────────────────────────────────────────────────
|
|
28
|
+
/**
|
|
29
|
+
* Check if a classified error should be retried at the given attempt.
|
|
30
|
+
*/
|
|
31
|
+
export function shouldRetry(error, attempt, preset) {
|
|
32
|
+
if (!error.retryable)
|
|
33
|
+
return false;
|
|
34
|
+
return attempt < RETRY_PRESETS[preset].maxAttempts;
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Calculate retry delay with exponential backoff + jitter.
|
|
38
|
+
* Jitter adds ±25% to prevent thundering herd.
|
|
39
|
+
*/
|
|
40
|
+
export function getRetryDelay(attempt, preset) {
|
|
41
|
+
const config = RETRY_PRESETS[preset];
|
|
42
|
+
const base = config.initialIntervalMs * Math.pow(config.backoffMultiplier, attempt);
|
|
43
|
+
const capped = Math.min(base, config.maxIntervalMs);
|
|
44
|
+
// ±25% jitter
|
|
45
|
+
const jitter = capped * 0.25 * (Math.random() * 2 - 1);
|
|
46
|
+
return Math.max(0, Math.round(capped + jitter));
|
|
47
|
+
}
|
|
48
|
+
// ─── Retry Loop ────────────────────────────────────────────────────────
|
|
49
|
+
function sleep(ms, signal) {
|
|
50
|
+
return new Promise((resolve, reject) => {
|
|
51
|
+
if (signal?.aborted) {
|
|
52
|
+
reject(signal.reason ?? new Error('Aborted'));
|
|
53
|
+
return;
|
|
54
|
+
}
|
|
55
|
+
const timer = setTimeout(resolve, ms);
|
|
56
|
+
signal?.addEventListener('abort', () => {
|
|
57
|
+
clearTimeout(timer);
|
|
58
|
+
reject(signal.reason ?? new Error('Aborted'));
|
|
59
|
+
}, { once: true });
|
|
60
|
+
});
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* Retry an async operation with a named preset.
|
|
64
|
+
*
|
|
65
|
+
* - On success: returns ok(result)
|
|
66
|
+
* - On permanent/fixable error: returns err() immediately
|
|
67
|
+
* - On retryable error: retries up to maxAttempts with backoff
|
|
68
|
+
* - On exhaustion: returns err() with last error
|
|
69
|
+
*/
|
|
70
|
+
export async function retryWithPreset(fn, preset, options) {
|
|
71
|
+
let lastError;
|
|
72
|
+
for (let attempt = 0; attempt < RETRY_PRESETS[preset].maxAttempts; attempt++) {
|
|
73
|
+
try {
|
|
74
|
+
const value = await fn();
|
|
75
|
+
return ok(value);
|
|
76
|
+
}
|
|
77
|
+
catch (thrown) {
|
|
78
|
+
lastError = classifyError(thrown);
|
|
79
|
+
if (!shouldRetry(lastError, attempt + 1, preset)) {
|
|
80
|
+
return err(lastError);
|
|
81
|
+
}
|
|
82
|
+
const delay = getRetryDelay(attempt, preset);
|
|
83
|
+
options?.onRetry?.(lastError, attempt + 1, delay);
|
|
84
|
+
try {
|
|
85
|
+
await sleep(delay, options?.signal);
|
|
86
|
+
}
|
|
87
|
+
catch {
|
|
88
|
+
// Aborted during sleep
|
|
89
|
+
return err(lastError);
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
return err(lastError ?? new SoleriError('Max retries exceeded', SoleriErrorCode.INTERNAL));
|
|
94
|
+
}
|
|
95
|
+
// Re-import for the err fallback
|
|
96
|
+
import { SoleriErrorCode } from './types.js';
|
|
97
|
+
//# sourceMappingURL=retry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"retry.js","sourceRoot":"","sources":["../../src/errors/retry.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Classified error types with typed retry presets.
|
|
3
|
+
*
|
|
4
|
+
* Every error is classified as retryable, fixable, or permanent.
|
|
5
|
+
* This lets callers decide strategy without inspecting codes.
|
|
6
|
+
*/
|
|
7
|
+
export declare enum SoleriErrorCode {
|
|
8
|
+
NETWORK = "NETWORK",
|
|
9
|
+
AUTH = "AUTH",
|
|
10
|
+
VALIDATION = "VALIDATION",
|
|
11
|
+
TIMEOUT = "TIMEOUT",
|
|
12
|
+
RATE_LIMIT = "RATE_LIMIT",
|
|
13
|
+
INTERNAL = "INTERNAL",
|
|
14
|
+
LLM_OVERLOAD = "LLM_OVERLOAD",
|
|
15
|
+
RESOURCE_NOT_FOUND = "RESOURCE_NOT_FOUND",
|
|
16
|
+
CONFIG_ERROR = "CONFIG_ERROR",
|
|
17
|
+
VAULT_UNREACHABLE = "VAULT_UNREACHABLE"
|
|
18
|
+
}
|
|
19
|
+
export type ErrorClassification = 'retryable' | 'fixable' | 'permanent';
|
|
20
|
+
export interface SoleriErrorOptions {
|
|
21
|
+
cause?: Error;
|
|
22
|
+
context?: Record<string, unknown>;
|
|
23
|
+
}
|
|
24
|
+
export declare class SoleriError extends Error {
|
|
25
|
+
readonly code: SoleriErrorCode;
|
|
26
|
+
readonly classification: ErrorClassification;
|
|
27
|
+
readonly retryable: boolean;
|
|
28
|
+
readonly context?: Record<string, unknown>;
|
|
29
|
+
constructor(message: string, code: SoleriErrorCode, options?: SoleriErrorOptions);
|
|
30
|
+
}
|
|
31
|
+
export type Result<T, E = SoleriError> = {
|
|
32
|
+
ok: true;
|
|
33
|
+
value: T;
|
|
34
|
+
} | {
|
|
35
|
+
ok: false;
|
|
36
|
+
error: E;
|
|
37
|
+
};
|
|
38
|
+
export declare function ok<T>(value: T): Result<T, never>;
|
|
39
|
+
export declare function err<T = never>(error: SoleriError): Result<T>;
|
|
40
|
+
export declare function isOk<T, E>(result: Result<T, E>): result is {
|
|
41
|
+
ok: true;
|
|
42
|
+
value: T;
|
|
43
|
+
};
|
|
44
|
+
export declare function isErr<T, E>(result: Result<T, E>): result is {
|
|
45
|
+
ok: false;
|
|
46
|
+
error: E;
|
|
47
|
+
};
|
|
48
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/errors/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,oBAAY,eAAe;IACzB,OAAO,YAAY;IACnB,IAAI,SAAS;IACb,UAAU,eAAe;IACzB,OAAO,YAAY;IACnB,UAAU,eAAe;IACzB,QAAQ,aAAa;IACrB,YAAY,iBAAiB;IAC7B,kBAAkB,uBAAuB;IACzC,YAAY,iBAAiB;IAC7B,iBAAiB,sBAAsB;CACxC;AAID,MAAM,MAAM,mBAAmB,GAAG,WAAW,GAAG,SAAS,GAAG,WAAW,CAAC;AAiBxE,MAAM,WAAW,kBAAkB;IACjC,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC;AAED,qBAAa,WAAY,SAAQ,KAAK;IACpC,QAAQ,CAAC,IAAI,EAAE,eAAe,CAAC;IAC/B,QAAQ,CAAC,cAAc,EAAE,mBAAmB,CAAC;IAC7C,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;gBAE/B,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,CAAC,EAAE,kBAAkB;CAQjF;AAID,MAAM,MAAM,MAAM,CAAC,CAAC,EAAE,CAAC,GAAG,WAAW,IAAI;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,KAAK,EAAE,CAAC,CAAA;CAAE,GAAG;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,CAAC,CAAA;CAAE,CAAC;AAE1F,wBAAgB,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,MAAM,CAAC,CAAC,EAAE,KAAK,CAAC,CAEhD;AAED,wBAAgB,GAAG,CAAC,CAAC,GAAG,KAAK,EAAE,KAAK,EAAE,WAAW,GAAG,MAAM,CAAC,CAAC,CAAC,CAE5D;AAED,wBAAgB,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,MAAM,IAAI;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,KAAK,EAAE,CAAC,CAAA;CAAE,CAEjF;AAED,wBAAgB,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,MAAM,IAAI;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,CAAC,CAAA;CAAE,CAEnF"}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Classified error types with typed retry presets.
|
|
3
|
+
*
|
|
4
|
+
* Every error is classified as retryable, fixable, or permanent.
|
|
5
|
+
* This lets callers decide strategy without inspecting codes.
|
|
6
|
+
*/
|
|
7
|
+
// ─── Error Codes ───────────────────────────────────────────────────────
|
|
8
|
+
export var SoleriErrorCode;
|
|
9
|
+
(function (SoleriErrorCode) {
|
|
10
|
+
SoleriErrorCode["NETWORK"] = "NETWORK";
|
|
11
|
+
SoleriErrorCode["AUTH"] = "AUTH";
|
|
12
|
+
SoleriErrorCode["VALIDATION"] = "VALIDATION";
|
|
13
|
+
SoleriErrorCode["TIMEOUT"] = "TIMEOUT";
|
|
14
|
+
SoleriErrorCode["RATE_LIMIT"] = "RATE_LIMIT";
|
|
15
|
+
SoleriErrorCode["INTERNAL"] = "INTERNAL";
|
|
16
|
+
SoleriErrorCode["LLM_OVERLOAD"] = "LLM_OVERLOAD";
|
|
17
|
+
SoleriErrorCode["RESOURCE_NOT_FOUND"] = "RESOURCE_NOT_FOUND";
|
|
18
|
+
SoleriErrorCode["CONFIG_ERROR"] = "CONFIG_ERROR";
|
|
19
|
+
SoleriErrorCode["VAULT_UNREACHABLE"] = "VAULT_UNREACHABLE";
|
|
20
|
+
})(SoleriErrorCode || (SoleriErrorCode = {}));
|
|
21
|
+
const CLASSIFICATION_MAP = {
|
|
22
|
+
[SoleriErrorCode.NETWORK]: 'retryable',
|
|
23
|
+
[SoleriErrorCode.TIMEOUT]: 'retryable',
|
|
24
|
+
[SoleriErrorCode.RATE_LIMIT]: 'retryable',
|
|
25
|
+
[SoleriErrorCode.LLM_OVERLOAD]: 'retryable',
|
|
26
|
+
[SoleriErrorCode.VAULT_UNREACHABLE]: 'retryable',
|
|
27
|
+
[SoleriErrorCode.INTERNAL]: 'retryable',
|
|
28
|
+
[SoleriErrorCode.VALIDATION]: 'fixable',
|
|
29
|
+
[SoleriErrorCode.AUTH]: 'permanent',
|
|
30
|
+
[SoleriErrorCode.RESOURCE_NOT_FOUND]: 'permanent',
|
|
31
|
+
[SoleriErrorCode.CONFIG_ERROR]: 'permanent',
|
|
32
|
+
};
|
|
33
|
+
export class SoleriError extends Error {
|
|
34
|
+
code;
|
|
35
|
+
classification;
|
|
36
|
+
retryable;
|
|
37
|
+
context;
|
|
38
|
+
constructor(message, code, options) {
|
|
39
|
+
super(message, options?.cause ? { cause: options.cause } : undefined);
|
|
40
|
+
this.name = 'SoleriError';
|
|
41
|
+
this.code = code;
|
|
42
|
+
this.classification = CLASSIFICATION_MAP[code];
|
|
43
|
+
this.retryable = this.classification === 'retryable';
|
|
44
|
+
this.context = options?.context;
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
export function ok(value) {
|
|
48
|
+
return { ok: true, value };
|
|
49
|
+
}
|
|
50
|
+
export function err(error) {
|
|
51
|
+
return { ok: false, error };
|
|
52
|
+
}
|
|
53
|
+
export function isOk(result) {
|
|
54
|
+
return result.ok === true;
|
|
55
|
+
}
|
|
56
|
+
export function isErr(result) {
|
|
57
|
+
return result.ok === false;
|
|
58
|
+
}
|
|
59
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/errors/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,0EAA0E;AAE1E,MAAM,CAAN,IAAY,eAWX;AAXD,WAAY,eAAe;IACzB,sCAAmB,CAAA;IACnB,gCAAa,CAAA;IACb,4CAAyB,CAAA;IACzB,sCAAmB,CAAA;IACnB,4CAAyB,CAAA;IACzB,wCAAqB,CAAA;IACrB,gDAA6B,CAAA;IAC7B,4DAAyC,CAAA;IACzC,gDAA6B,CAAA;IAC7B,0DAAuC,CAAA;AACzC,CAAC,EAXW,eAAe,KAAf,eAAe,QAW1B;AAMD,MAAM,kBAAkB,GAAiD;IACvE,CAAC,eAAe,CAAC,OAAO,CAAC,EAAE,WAAW;IACtC,CAAC,eAAe,CAAC,OAAO,CAAC,EAAE,WAAW;IACtC,CAAC,eAAe,CAAC,UAAU,CAAC,EAAE,WAAW;IACzC,CAAC,eAAe,CAAC,YAAY,CAAC,EAAE,WAAW;IAC3C,CAAC,eAAe,CAAC,iBAAiB,CAAC,EAAE,WAAW;IAChD,CAAC,eAAe,CAAC,QAAQ,CAAC,EAAE,WAAW;IACvC,CAAC,eAAe,CAAC,UAAU,CAAC,EAAE,SAAS;IACvC,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,WAAW;IACnC,CAAC,eAAe,CAAC,kBAAkB,CAAC,EAAE,WAAW;IACjD,CAAC,eAAe,CAAC,YAAY,CAAC,EAAE,WAAW;CAC5C,CAAC;AASF,MAAM,OAAO,WAAY,SAAQ,KAAK;IAC3B,IAAI,CAAkB;IACtB,cAAc,CAAsB;IACpC,SAAS,CAAU;IACnB,OAAO,CAA2B;IAE3C,YAAY,OAAe,EAAE,IAAqB,EAAE,OAA4B;QAC9E,KAAK,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;QACtE,IAAI,CAAC,IAAI,GAAG,aAAa,CAAC;QAC1B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,cAAc,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC;QAC/C,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,cAAc,KAAK,WAAW,CAAC;QACrD,IAAI,CAAC,OAAO,GAAG,OAAO,EAAE,OAAO,CAAC;IAClC,CAAC;CACF;AAMD,MAAM,UAAU,EAAE,CAAI,KAAQ;IAC5B,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;AAC7B,CAAC;AAED,MAAM,UAAU,GAAG,CAAY,KAAkB;IAC/C,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;AAC9B,CAAC;AAED,MAAM,UAAU,IAAI,CAAO,MAAoB;IAC7C,OAAO,MAAM,CAAC,EAAE,KAAK,IAAI,CAAC;AAC5B,CAAC;AAED,MAAM,UAAU,KAAK,CAAO,MAAoB;IAC9C,OAAO,MAAM,CAAC,EAAE,KAAK,KAAK,CAAC;AAC7B,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -2,6 +2,11 @@ export type { IntelligenceEntry, IntelligenceBundle } from './intelligence/types
|
|
|
2
2
|
export { loadIntelligenceData } from './intelligence/loader.js';
|
|
3
3
|
export { Vault } from './vault/vault.js';
|
|
4
4
|
export type { SearchResult, VaultStats, ProjectInfo, Memory, MemoryStats } from './vault/vault.js';
|
|
5
|
+
export { validatePlaybook, parsePlaybookFromEntry } from './vault/playbook.js';
|
|
6
|
+
export type { Playbook, PlaybookStep, PlaybookValidationResult } from './vault/playbook.js';
|
|
7
|
+
export { getBuiltinPlaybook, getAllBuiltinPlaybooks, scorePlaybook, mergePlaybooks, matchPlaybooks, seedDefaultPlaybooks, playbookDefinitionToEntry, entryToPlaybookDefinition, } from './playbooks/index.js';
|
|
8
|
+
export type { PlaybookTier, PlaybookIntent, BrainstormSection, PlaybookGate, PlaybookTaskTemplate, PlaybookDefinition, MergedPlaybook, PlaybookMatchResult, } from './playbooks/index.js';
|
|
9
|
+
export { createPlaybookOps } from './runtime/playbook-ops.js';
|
|
5
10
|
export { tokenize, calculateTf, calculateTfIdf, cosineSimilarity, jaccardSimilarity, } from './text/similarity.js';
|
|
6
11
|
export type { SparseVector } from './text/similarity.js';
|
|
7
12
|
export { Curator } from './curator/curator.js';
|
|
@@ -13,14 +18,21 @@ export { BrainIntelligence } from './brain/intelligence.js';
|
|
|
13
18
|
export type { ScoringWeights, ScoreBreakdown, RankedResult, SearchOptions, CaptureResult, BrainStats, QueryContext, FeedbackType, FeedbackSource, FeedbackInput, FeedbackEntry, FeedbackStats, PatternStrength, StrengthsQuery, BrainSession, SessionLifecycleInput, KnowledgeProposal, ExtractionResult, GlobalPattern, DomainProfile, BuildIntelligenceResult, BrainIntelligenceStats, SessionContext, BrainExportData, BrainImportResult, } from './brain/types.js';
|
|
14
19
|
export { CogneeClient } from './cognee/client.js';
|
|
15
20
|
export type { CogneeConfig, CogneeSearchResult, CogneeSearchType, CogneeStatus, CogneeAddResult, CogneeCognifyResult, } from './cognee/types.js';
|
|
16
|
-
export {
|
|
17
|
-
export type {
|
|
18
|
-
export {
|
|
21
|
+
export { CogneeSyncManager } from './cognee/sync-manager.js';
|
|
22
|
+
export type { SyncOp, SyncStatus, SyncQueueItem, SyncManagerStats } from './cognee/sync-manager.js';
|
|
23
|
+
export { IntakePipeline } from './intake/intake-pipeline.js';
|
|
24
|
+
export { classifyChunk, VALID_TYPES, CLASSIFICATION_PROMPT } from './intake/content-classifier.js';
|
|
25
|
+
export { dedupItems, DEDUP_THRESHOLD } from './intake/dedup-gate.js';
|
|
26
|
+
export type { IntakeConfig, IntakeChunk, IntakeJobRecord, IntakeJobStatus, IntakeChunkStatus, KnowledgeType, ClassifiedItem, IntakePreviewResult, } from './intake/types.js';
|
|
27
|
+
export type { DedupResult } from './intake/dedup-gate.js';
|
|
28
|
+
export { Planner, calculateScore, calculateDriftScore, isValidTransition, getValidNextStatuses, shouldExpire, LIFECYCLE_TRANSITIONS, NON_EXPIRING_STATUSES, DRIFT_WEIGHTS, } from './planning/planner.js';
|
|
29
|
+
export type { PlanStatus, TaskStatus, TaskEvidence, TaskMetrics, TaskDeliverable, ExecutionSummary, PlanTask, PlanDecision, Plan, PlanStore, DriftItem, ReconciliationReport, ReviewEvidence, PlanGrade, PlanCheck, } from './planning/planner.js';
|
|
30
|
+
export { runGapAnalysis, createToolFeasibilityPass, createFlowAlignmentPass, createAntiPatternPass, } from './planning/gap-analysis.js';
|
|
19
31
|
export type { GapAnalysisOptions, GapAnalysisPass } from './planning/gap-analysis.js';
|
|
20
32
|
export { SEVERITY_WEIGHTS, CATEGORY_PENALTY_CAPS, MIN_OBJECTIVE_LENGTH, MIN_SCOPE_LENGTH, MIN_DECISION_LENGTH, generateGapId, } from './planning/gap-types.js';
|
|
21
33
|
export type { GapSeverity, GapCategory, PlanGap } from './planning/gap-types.js';
|
|
22
|
-
export { LoopManager } from './loop/loop-manager.js';
|
|
23
|
-
export type { LoopMode, LoopConfig, LoopIteration, LoopStatus, LoopState, } from './loop/types.js';
|
|
34
|
+
export { LoopManager, extractPromise, detectImplicitCompletion, detectAnomaly, } from './loop/loop-manager.js';
|
|
35
|
+
export type { LoopMode, LoopConfig, LoopIteration, LoopStatus, LoopState, LoopKnowledge, LoopHistoryEntry, LoopIterateDecision, } from './loop/types.js';
|
|
24
36
|
export { SecretString, LLMError } from './llm/types.js';
|
|
25
37
|
export type { LLMCallOptions, LLMCallResult, CircuitState, CircuitBreakerConfig, CircuitBreakerSnapshot, KeyPoolConfig, KeyStatus, RouteEntry, RoutingConfig, RateLimitInfo, RetryConfig, } from './llm/types.js';
|
|
26
38
|
export { CircuitBreaker, CircuitOpenError, computeDelay, retry, parseRateLimitHeaders, } from './llm/utils.js';
|
|
@@ -54,5 +66,13 @@ export { createCaptureOps } from './runtime/capture-ops.js';
|
|
|
54
66
|
export { createCuratorExtraOps } from './runtime/curator-extra-ops.js';
|
|
55
67
|
export { createProjectOps } from './runtime/project-ops.js';
|
|
56
68
|
export { createMemoryCrossProjectOps } from './runtime/memory-cross-project-ops.js';
|
|
69
|
+
export { createCogneeSyncOps } from './runtime/cognee-sync-ops.js';
|
|
70
|
+
export { createIntakeOps } from './runtime/intake-ops.js';
|
|
57
71
|
export type { AgentRuntimeConfig, AgentRuntime } from './runtime/types.js';
|
|
72
|
+
export { SoleriErrorCode, SoleriError, ok, err, isOk, isErr, classifyError, retryWithPreset, shouldRetry, getRetryDelay, RETRY_PRESETS, } from './errors/index.js';
|
|
73
|
+
export type { ErrorClassification, Result, SoleriErrorOptions, RetryPreset, RetryConfig as SoleriRetryConfig, RetryOptions, } from './errors/index.js';
|
|
74
|
+
export { SQLitePersistenceProvider } from './persistence/index.js';
|
|
75
|
+
export type { PersistenceProvider, PersistenceParams, RunResult, PersistenceConfig, } from './persistence/index.js';
|
|
76
|
+
export { TemplateManager, parseVariables, resolveIncludes } from './prompts/index.js';
|
|
77
|
+
export type { PromptTemplate, TemplateVariable, RenderOptions } from './prompts/index.js';
|
|
58
78
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,YAAY,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AACrF,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAGhE,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACzC,YAAY,EAAE,YAAY,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -1,6 +1,10 @@
|
|
|
1
1
|
export { loadIntelligenceData } from './intelligence/loader.js';
|
|
2
2
|
// ─── Vault ───────────────────────────────────────────────────────────
|
|
3
3
|
export { Vault } from './vault/vault.js';
|
|
4
|
+
export { validatePlaybook, parsePlaybookFromEntry } from './vault/playbook.js';
|
|
5
|
+
// ─── Playbook System (registry, matching, seeding) ─────────────────
|
|
6
|
+
export { getBuiltinPlaybook, getAllBuiltinPlaybooks, scorePlaybook, mergePlaybooks, matchPlaybooks, seedDefaultPlaybooks, playbookDefinitionToEntry, entryToPlaybookDefinition, } from './playbooks/index.js';
|
|
7
|
+
export { createPlaybookOps } from './runtime/playbook-ops.js';
|
|
4
8
|
// ─── Text Utilities ─────────────────────────────────────────────────
|
|
5
9
|
export { tokenize, calculateTf, calculateTfIdf, cosineSimilarity, jaccardSimilarity, } from './text/similarity.js';
|
|
6
10
|
// ─── Curator ────────────────────────────────────────────────────────
|
|
@@ -12,13 +16,19 @@ export { Brain } from './brain/brain.js';
|
|
|
12
16
|
export { BrainIntelligence } from './brain/intelligence.js';
|
|
13
17
|
// ─── Cognee ─────────────────────────────────────────────────────────
|
|
14
18
|
export { CogneeClient } from './cognee/client.js';
|
|
19
|
+
// ─── Cognee Sync ──────────────────────────────────────────────────────
|
|
20
|
+
export { CogneeSyncManager } from './cognee/sync-manager.js';
|
|
21
|
+
// ─── Intake Pipeline ──────────────────────────────────────────────────
|
|
22
|
+
export { IntakePipeline } from './intake/intake-pipeline.js';
|
|
23
|
+
export { classifyChunk, VALID_TYPES, CLASSIFICATION_PROMPT } from './intake/content-classifier.js';
|
|
24
|
+
export { dedupItems, DEDUP_THRESHOLD } from './intake/dedup-gate.js';
|
|
15
25
|
// ─── Planning ────────────────────────────────────────────────────────
|
|
16
|
-
export { Planner, calculateScore } from './planning/planner.js';
|
|
26
|
+
export { Planner, calculateScore, calculateDriftScore, isValidTransition, getValidNextStatuses, shouldExpire, LIFECYCLE_TRANSITIONS, NON_EXPIRING_STATUSES, DRIFT_WEIGHTS, } from './planning/planner.js';
|
|
17
27
|
// ─── Plan Gap Analysis ──────────────────────────────────────────────
|
|
18
|
-
export { runGapAnalysis } from './planning/gap-analysis.js';
|
|
28
|
+
export { runGapAnalysis, createToolFeasibilityPass, createFlowAlignmentPass, createAntiPatternPass, } from './planning/gap-analysis.js';
|
|
19
29
|
export { SEVERITY_WEIGHTS, CATEGORY_PENALTY_CAPS, MIN_OBJECTIVE_LENGTH, MIN_SCOPE_LENGTH, MIN_DECISION_LENGTH, generateGapId, } from './planning/gap-types.js';
|
|
20
30
|
// ─── Loop ────────────────────────────────────────────────────────────
|
|
21
|
-
export { LoopManager } from './loop/loop-manager.js';
|
|
31
|
+
export { LoopManager, extractPromise, detectImplicitCompletion, detectAnomaly, } from './loop/loop-manager.js';
|
|
22
32
|
// ─── LLM Types ───────────────────────────────────────────────────────
|
|
23
33
|
export { SecretString, LLMError } from './llm/types.js';
|
|
24
34
|
// ─── LLM Utils ───────────────────────────────────────────────────────
|
|
@@ -55,4 +65,12 @@ export { createCaptureOps } from './runtime/capture-ops.js';
|
|
|
55
65
|
export { createCuratorExtraOps } from './runtime/curator-extra-ops.js';
|
|
56
66
|
export { createProjectOps } from './runtime/project-ops.js';
|
|
57
67
|
export { createMemoryCrossProjectOps } from './runtime/memory-cross-project-ops.js';
|
|
68
|
+
export { createCogneeSyncOps } from './runtime/cognee-sync-ops.js';
|
|
69
|
+
export { createIntakeOps } from './runtime/intake-ops.js';
|
|
70
|
+
// ─── Errors ────────────────────────────────────────────────────────────
|
|
71
|
+
export { SoleriErrorCode, SoleriError, ok, err, isOk, isErr, classifyError, retryWithPreset, shouldRetry, getRetryDelay, RETRY_PRESETS, } from './errors/index.js';
|
|
72
|
+
// ─── Persistence ───────────────────────────────────────────────────────
|
|
73
|
+
export { SQLitePersistenceProvider } from './persistence/index.js';
|
|
74
|
+
// ─── Prompts ───────────────────────────────────────────────────────────
|
|
75
|
+
export { TemplateManager, parseVariables, resolveIncludes } from './prompts/index.js';
|
|
58
76
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAEhE,wEAAwE;AACxE,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { LLMClient } from '../llm/llm-client.js';
|
|
2
|
+
import type { ClassifiedItem, KnowledgeType } from './types.js';
|
|
3
|
+
export declare const VALID_TYPES: KnowledgeType[];
|
|
4
|
+
export declare const CLASSIFICATION_PROMPT: string;
|
|
5
|
+
/**
|
|
6
|
+
* Classify a text chunk into structured knowledge items using an LLM.
|
|
7
|
+
*
|
|
8
|
+
* @param llm - LLMClient instance
|
|
9
|
+
* @param chunkText - The text to classify
|
|
10
|
+
* @param citation - Source citation (e.g. "book.pdf, pages 12-15")
|
|
11
|
+
* @returns Classified items, or [] on any error
|
|
12
|
+
*/
|
|
13
|
+
export declare function classifyChunk(llm: LLMClient, chunkText: string, citation: string): Promise<ClassifiedItem[]>;
|
|
14
|
+
//# sourceMappingURL=content-classifier.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"content-classifier.d.ts","sourceRoot":"","sources":["../../src/intake/content-classifier.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAMhE,eAAO,MAAM,WAAW,EAAE,aAAa,EAStC,CAAC;AAKF,eAAO,MAAM,qBAAqB,QAe+C,CAAC;AAMlF;;;;;;;GAOG;AACH,wBAAsB,aAAa,CACjC,GAAG,EAAE,SAAS,EACd,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,cAAc,EAAE,CAAC,CAuB3B"}
|