@exulu/backend 3.1.0 → 3.3.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/README.md +37 -0
- package/dist/{chunk-ZDH5S2WF.js → chunk-5FTX543Z.js} +879 -489
- package/dist/{convert-exulu-tools-to-ai-sdk-tools-FN6WZSIQ.js → convert-exulu-tools-to-ai-sdk-tools-WQWYMU7G.js} +1 -1
- package/dist/index.cjs +3958 -5159
- package/dist/index.d.cts +321 -389
- package/dist/index.d.ts +321 -389
- package/dist/index.js +1844 -3493
- package/ee/agentic-retrieval/pipeline/index.test.ts +4 -4
- package/ee/agentic-retrieval/pipeline/index.ts +6 -5
- package/ee/agentic-retrieval/pipeline/memory.test.ts +4 -2
- package/ee/agentic-retrieval/pipeline/memory.ts +20 -13
- package/ee/agentic-retrieval/pipeline/search.test.ts +19 -4
- package/ee/agentic-retrieval/pipeline/search.ts +8 -4
- package/ee/agentic-retrieval/pipeline/types.ts +1 -1
- package/ee/python/documents/processing/doc_processor.ts +0 -1
- package/ee/queues/queues.ts +13 -0
- package/ee/schemas.ts +11 -10
- package/ee/workers.ts +42 -56
- package/package.json +1 -1
- package/ee/workers.flow.test.ts +0 -236
package/README.md
CHANGED
|
@@ -564,6 +564,43 @@ npx @exulu/frontend
|
|
|
564
564
|
|
|
565
565
|
Visit `http://localhost:3001` to access the admin interface. See the [**Exulu Frontend**](https://github.com/Qventu/exulu-frontend) repository for more details.
|
|
566
566
|
|
|
567
|
+
## Audit logging
|
|
568
|
+
|
|
569
|
+
Enable an auditable, S3-backed trail of tool calls (which agent called which
|
|
570
|
+
tool, on whose behalf, using which credential identity, with what payload).
|
|
571
|
+
Off by default. Configure via `ExuluApp.create({ config })`:
|
|
572
|
+
|
|
573
|
+
```ts
|
|
574
|
+
await app.create({
|
|
575
|
+
tools,
|
|
576
|
+
config: {
|
|
577
|
+
// ...existing config...
|
|
578
|
+
audit: {
|
|
579
|
+
enabled: true,
|
|
580
|
+
retentionDays: 90, // S3 lifecycle expiry
|
|
581
|
+
// Optional: a dedicated, isolated bucket. Omit to reuse `fileUploads`.
|
|
582
|
+
s3: {
|
|
583
|
+
s3region: process.env.AUDIT_S3_REGION!,
|
|
584
|
+
s3key: process.env.AUDIT_S3_KEY!,
|
|
585
|
+
s3secret: process.env.AUDIT_S3_SECRET!,
|
|
586
|
+
s3Bucket: process.env.AUDIT_S3_BUCKET!,
|
|
587
|
+
s3prefix: "audit/",
|
|
588
|
+
},
|
|
589
|
+
// failureMode: "open" (default) | "closed"
|
|
590
|
+
// sources: { toolCalls: { exclude: ["noisy_tool"] } },
|
|
591
|
+
},
|
|
592
|
+
},
|
|
593
|
+
});
|
|
594
|
+
```
|
|
595
|
+
|
|
596
|
+
Records are written as newline-delimited JSON under
|
|
597
|
+
`audit/dt=2026-07-28/14/1753970400000-3f8c2a1b.ndjson`. **Secret material is never logged** — only
|
|
598
|
+
credential identity (provider, account, authType, non-secret scopes/expiry).
|
|
599
|
+
When reusing the shared `fileUploads` bucket, the S3 lifecycle rule is not
|
|
600
|
+
applied automatically (to avoid touching a bucket that also holds user files);
|
|
601
|
+
the exact rule to apply is logged at startup. Set `manageLifecycle: true` to
|
|
602
|
+
apply it anyway.
|
|
603
|
+
|
|
567
604
|
## 🛠️ Development
|
|
568
605
|
|
|
569
606
|
```bash
|