@devilsdev/rag-pipeline-utils 2.1.5 → 2.1.8
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/LICENSE +674 -674
- package/README.md +395 -179
- package/bin/cli.js +14 -62
- package/contracts/embedder-contract.json +52 -0
- package/contracts/llm-contract.json +36 -0
- package/contracts/loader-contract.json +43 -0
- package/contracts/retriever-contract.json +68 -0
- package/dist/index.cjs +67 -0
- package/dist/index.mjs +51 -0
- package/package.json +108 -22
- package/.codecov.yml +0 -21
- package/.dockerignore +0 -14
- package/.eslintignore +0 -5
- package/.eslintrc.json +0 -28
- package/.github/PROJECT_ROADMAP.md +0 -102
- package/.github/PULL_REQUEST_TEMPLATE.md +0 -8
- package/.github/release-template.md +0 -20
- package/.github/workflows/changelog-auto-commit.yml +0 -37
- package/.github/workflows/ci.yml +0 -53
- package/.github/workflows/docs-ci.yml +0 -46
- package/.github/workflows/docs-deploy.yml +0 -55
- package/.github/workflows/enforce-release-review.yml +0 -47
- package/.github/workflows/publish-release-blog.yml +0 -47
- package/.github/workflows/release-sync.yml +0 -50
- package/.github/workflows/roadmap-label-sync.yml +0 -35
- package/.github/workflows/roadmap-labels.yml +0 -67
- package/.github/workflows/roadmap-sync.yml +0 -44
- package/.github/workflows/sync-roadmap.yml +0 -62
- package/.husky/pre-commit +0 -6
- package/CHANGELOG.md +0 -97
- package/Dockerfile +0 -22
- package/Use-Cases.md +0 -134
- package/__tests__/fixtures/.ragrc.json +0 -8
- package/__tests__/fixtures/invalid-ragrc.json +0 -4
- package/__tests__/fixtures/sample-eval-dataset.json +0 -15
- package/__tests__/fixtures/sample.pdf +0 -1
- package/__tests__/fixtures/src/mocks/openai-embedder.js +0 -16
- package/__tests__/fixtures/src/mocks/openai-llm.js +0 -9
- package/__tests__/fixtures/src/mocks/pdf-loader.js +0 -17
- package/__tests__/fixtures/src/mocks/pinecone-retriever.js +0 -26
- package/__tests__/fixtures/valid-ragrc.json +0 -16
- package/__tests__/integration/cli/config-flow.test.js +0 -98
- package/__tests__/integration/config/load-config.test.js +0 -67
- package/__tests__/scripts/ensure-roadmap-labels.test.js +0 -64
- package/__tests__/unit/config/validate-schema.test.js +0 -121
- package/__tests__/unit/core/plugin-registry.test.js +0 -55
- package/__tests__/unit/reranker/__snapshots__/reranker.snapshot.test.js.snap +0 -15
- package/__tests__/unit/reranker/llm-reranker.test.js +0 -18
- package/__tests__/unit/reranker/reranker.enriched.test.js +0 -19
- package/__tests__/unit/reranker/reranker.fallback.test.js +0 -15
- package/__tests__/unit/reranker/reranker.snapshot.test.js +0 -15
- package/__tests__/unit/reranker/reranker.structured-output.test.js +0 -17
- package/codecov +0 -0
- package/codecov.SHA256SUM +0 -1
- package/codecov.SHA256SUM.sig +0 -16
- package/docs-site/README.md +0 -41
- package/docs-site/blog/2025-04-18-architecture-overview.md +0 -16
- package/docs-site/blog/2025-04-18-release-v2.1.1.md +0 -13
- package/docs-site/blog/2025-04-19-prompt-engineering-best-practices.md +0 -16
- package/docs-site/blog/2025-04-20-image-showcase.md +0 -14
- package/docs-site/blog/2025-04-20-release-2.1.1.md +0 -21
- package/docs-site/blog/2025-04-21-release-v2.1.3.md +0 -13
- package/docs-site/blog/2025-04-21-release-v2.1.4.md +0 -13
- package/docs-site/blog/authors.yml +0 -5
- package/docs-site/blog/tags.yml +0 -60
- package/docs-site/docs/Architecture.md +0 -76
- package/docs-site/docs/CLI.md +0 -69
- package/docs-site/docs/Evaluation.md +0 -61
- package/docs-site/docs/FAQ.md +0 -50
- package/docs-site/docs/Introduction.md +0 -58
- package/docs-site/docs/Plugins.md +0 -61
- package/docs-site/docs/Tutorials.md +0 -106
- package/docs-site/docs/Usage.md +0 -72
- package/docs-site/docs/Use-Cases.md +0 -77
- package/docs-site/docs/intro.mdx +0 -6
- package/docs-site/docusaurus.config.js +0 -88
- package/docs-site/package-lock.json +0 -17914
- package/docs-site/package.json +0 -47
- package/docs-site/sidebars.js +0 -39
- package/docs-site/src/components/HomepageFeatures/index.js +0 -56
- package/docs-site/src/components/HomepageFeatures/index.module.css +0 -57
- package/docs-site/src/components/HomepageHeader/index.js +0 -46
- package/docs-site/src/components/HomepageHeader/index.module.css +0 -77
- package/docs-site/src/css/custom.css +0 -104
- package/docs-site/src/pages/index.js +0 -20
- package/docs-site/src/pages/index.module.css +0 -23
- package/docs-site/src/pages/markdown-page.md +0 -7
- package/docs-site/static/.nojekyll +0 -0
- package/docs-site/static/img/authors/ali.jpg +0 -0
- package/docs-site/static/img/hero.jpg +0 -0
- package/docs-site/static/img/logo.png +0 -0
- package/docs-site/static/img/logo.svg +0 -6
- package/docs-site/static/img/social-card.jpg +0 -0
- package/jest.config.js +0 -24
- package/plugin.config.json +0 -14
- package/public/index.html +0 -0
- package/public/results/sample-eval.json +0 -0
- package/public/src/App.jsx +0 -57
- package/release.config.js +0 -36
- package/scripts/banner-injector.js +0 -102
- package/scripts/ci-runner.js +0 -51
- package/scripts/close-done-roadmap-issues.js +0 -65
- package/scripts/create-roadmap-issues.js +0 -47
- package/scripts/ensure-roadmap-labels.js +0 -73
- package/scripts/fix-mdx-blog-imports.js +0 -50
- package/scripts/fix-mdx-image-imports.js +0 -27
- package/scripts/generate-release-note.js +0 -40
- package/scripts/label-roadmap-issues.js +0 -125
- package/scripts/manual-test-checklist.md +0 -90
- package/scripts/repair-fixtures.js +0 -30
- package/scripts/setup.js +0 -31
- package/scripts/sync-labels.js +0 -71
- package/scripts/sync-roadmap-labels.js +0 -21
- package/scripts/tag-release.js +0 -64
- package/scripts/test-global-setup.js +0 -18
- package/scripts/validate-changelog-version.js +0 -48
- package/scripts/verify-fixture-mocks.js +0 -45
- package/scripts/verify-fixtures.js +0 -36
- package/server.js +0 -31
- package/src/config/load-config.js +0 -33
- package/src/config/load-plugin-config.js +0 -56
- package/src/config/validate-plugin-schema.js +0 -28
- package/src/config/validate-schema.js +0 -107
- package/src/core/create-pipeline.js +0 -96
- package/src/core/plugin-contracts.js +0 -21
- package/src/core/plugin-registry.js +0 -48
- package/src/dag/dag-engine.js +0 -70
- package/src/evaluate/evaluator.js +0 -44
- package/src/evaluate/scoring.js +0 -74
- package/src/loader/csv-loader.js +0 -30
- package/src/loader/directory-loader.js +0 -38
- package/src/loader/html-loader.js +0 -57
- package/src/loader/markdown-loader.js +0 -58
- package/src/mocks/openai-embedder.js +0 -30
- package/src/mocks/openai-llm.js +0 -18
- package/src/mocks/pdf-loader.js +0 -17
- package/src/mocks/pinecone-retriever.js +0 -25
- package/src/reranker/llm-reranker.js +0 -34
- package/src/utils/ci/diagnostic-reporter.js +0 -36
- package/src/utils/logger.js +0 -29
- package/src/utils/retry.js +0 -42
- package/src/utils/validate-plugin-contract.js +0 -36
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
3
|
+
"type": "embedder",
|
|
4
|
+
"version": "1.0.0",
|
|
5
|
+
"title": "Embedder Contract",
|
|
6
|
+
"description": "Contract for embedder plugins",
|
|
7
|
+
"methods": [
|
|
8
|
+
{
|
|
9
|
+
"name": "embed",
|
|
10
|
+
"parameters": ["chunks"],
|
|
11
|
+
"returns": "vectors"
|
|
12
|
+
}
|
|
13
|
+
],
|
|
14
|
+
"properties": {
|
|
15
|
+
"embed": {
|
|
16
|
+
"type": "function",
|
|
17
|
+
"description": "Generate embeddings for text chunks",
|
|
18
|
+
"parameters": {
|
|
19
|
+
"type": "object",
|
|
20
|
+
"properties": {
|
|
21
|
+
"chunks": {
|
|
22
|
+
"type": "array",
|
|
23
|
+
"items": {
|
|
24
|
+
"type": "object",
|
|
25
|
+
"properties": {
|
|
26
|
+
"id": { "type": "string" },
|
|
27
|
+
"content": { "type": "string" }
|
|
28
|
+
},
|
|
29
|
+
"required": ["id", "content"]
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
},
|
|
33
|
+
"required": ["chunks"]
|
|
34
|
+
},
|
|
35
|
+
"returns": {
|
|
36
|
+
"type": "array",
|
|
37
|
+
"items": {
|
|
38
|
+
"type": "object",
|
|
39
|
+
"properties": {
|
|
40
|
+
"id": { "type": "string" },
|
|
41
|
+
"vector": {
|
|
42
|
+
"type": "array",
|
|
43
|
+
"items": { "type": "number" }
|
|
44
|
+
}
|
|
45
|
+
},
|
|
46
|
+
"required": ["id", "vector"]
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
},
|
|
51
|
+
"required": ["embed"]
|
|
52
|
+
}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
3
|
+
"type": "llm",
|
|
4
|
+
"version": "1.0.0",
|
|
5
|
+
"title": "LLM Contract",
|
|
6
|
+
"description": "Contract for LLM plugins",
|
|
7
|
+
"methods": [
|
|
8
|
+
{
|
|
9
|
+
"name": "generate",
|
|
10
|
+
"parameters": ["prompt"],
|
|
11
|
+
"returns": "response"
|
|
12
|
+
}
|
|
13
|
+
],
|
|
14
|
+
"properties": {
|
|
15
|
+
"generate": {
|
|
16
|
+
"type": "function",
|
|
17
|
+
"description": "Generate text response",
|
|
18
|
+
"parameters": {
|
|
19
|
+
"type": "object",
|
|
20
|
+
"properties": {
|
|
21
|
+
"prompt": { "type": "string" },
|
|
22
|
+
"context": {
|
|
23
|
+
"type": "array",
|
|
24
|
+
"items": { "type": "string" }
|
|
25
|
+
},
|
|
26
|
+
"options": { "type": "object" }
|
|
27
|
+
},
|
|
28
|
+
"required": ["prompt"]
|
|
29
|
+
},
|
|
30
|
+
"returns": {
|
|
31
|
+
"type": "string"
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
},
|
|
35
|
+
"required": ["generate"]
|
|
36
|
+
}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
3
|
+
"type": "loader",
|
|
4
|
+
"version": "1.0.0",
|
|
5
|
+
"title": "Loader Contract",
|
|
6
|
+
"description": "Contract for loader plugins",
|
|
7
|
+
"methods": [
|
|
8
|
+
{
|
|
9
|
+
"name": "load",
|
|
10
|
+
"parameters": ["source"],
|
|
11
|
+
"returns": "documents"
|
|
12
|
+
}
|
|
13
|
+
],
|
|
14
|
+
"properties": {
|
|
15
|
+
"load": {
|
|
16
|
+
"type": "function",
|
|
17
|
+
"description": "Load documents from source",
|
|
18
|
+
"parameters": {
|
|
19
|
+
"type": "object",
|
|
20
|
+
"properties": {
|
|
21
|
+
"source": {
|
|
22
|
+
"type": "string",
|
|
23
|
+
"description": "Source path or identifier"
|
|
24
|
+
}
|
|
25
|
+
},
|
|
26
|
+
"required": ["source"]
|
|
27
|
+
},
|
|
28
|
+
"returns": {
|
|
29
|
+
"type": "array",
|
|
30
|
+
"items": {
|
|
31
|
+
"type": "object",
|
|
32
|
+
"properties": {
|
|
33
|
+
"id": { "type": "string" },
|
|
34
|
+
"content": { "type": "string" },
|
|
35
|
+
"metadata": { "type": "object" }
|
|
36
|
+
},
|
|
37
|
+
"required": ["id", "content"]
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
},
|
|
42
|
+
"required": ["load"]
|
|
43
|
+
}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
3
|
+
"type": "retriever",
|
|
4
|
+
"version": "1.0.0",
|
|
5
|
+
"title": "Retriever Contract",
|
|
6
|
+
"description": "Contract for retriever plugins",
|
|
7
|
+
"methods": [
|
|
8
|
+
{
|
|
9
|
+
"name": "store",
|
|
10
|
+
"parameters": ["vectors"],
|
|
11
|
+
"returns": "success"
|
|
12
|
+
},
|
|
13
|
+
{
|
|
14
|
+
"name": "retrieve",
|
|
15
|
+
"parameters": ["query", "k"],
|
|
16
|
+
"returns": "results"
|
|
17
|
+
}
|
|
18
|
+
],
|
|
19
|
+
"properties": {
|
|
20
|
+
"store": {
|
|
21
|
+
"type": "function",
|
|
22
|
+
"description": "Store vectors in the retrieval system",
|
|
23
|
+
"parameters": {
|
|
24
|
+
"type": "object",
|
|
25
|
+
"properties": {
|
|
26
|
+
"vectors": {
|
|
27
|
+
"type": "array",
|
|
28
|
+
"items": {
|
|
29
|
+
"type": "object",
|
|
30
|
+
"properties": {
|
|
31
|
+
"id": { "type": "string" },
|
|
32
|
+
"vector": { "type": "array", "items": { "type": "number" } },
|
|
33
|
+
"metadata": { "type": "object" }
|
|
34
|
+
},
|
|
35
|
+
"required": ["id", "vector"]
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
},
|
|
39
|
+
"required": ["vectors"]
|
|
40
|
+
}
|
|
41
|
+
},
|
|
42
|
+
"retrieve": {
|
|
43
|
+
"type": "function",
|
|
44
|
+
"description": "Retrieve relevant vectors",
|
|
45
|
+
"parameters": {
|
|
46
|
+
"type": "object",
|
|
47
|
+
"properties": {
|
|
48
|
+
"query": { "type": "string" },
|
|
49
|
+
"k": { "type": "number", "default": 10 }
|
|
50
|
+
},
|
|
51
|
+
"required": ["query"]
|
|
52
|
+
},
|
|
53
|
+
"returns": {
|
|
54
|
+
"type": "array",
|
|
55
|
+
"items": {
|
|
56
|
+
"type": "object",
|
|
57
|
+
"properties": {
|
|
58
|
+
"id": { "type": "string" },
|
|
59
|
+
"score": { "type": "number" },
|
|
60
|
+
"metadata": { "type": "object" }
|
|
61
|
+
},
|
|
62
|
+
"required": ["id", "score"]
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
},
|
|
67
|
+
"required": ["store", "retrieve"]
|
|
68
|
+
}
|
package/dist/index.cjs
ADDED
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* RAG Pipeline Utils - Public API
|
|
3
|
+
* Main entry point for consumers of the library
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
// Core pipeline functionality
|
|
7
|
+
const { createRagPipeline } = require('../src/core/create-pipeline');
|
|
8
|
+
|
|
9
|
+
// Configuration utilities
|
|
10
|
+
const { loadConfig } = require('../src/config/load-config');
|
|
11
|
+
const { validateRagrc } = require('../src/config/enhanced-ragrc-schema');
|
|
12
|
+
const { normalizeConfig } = require('../src/config/normalize-config');
|
|
13
|
+
|
|
14
|
+
// Plugin system
|
|
15
|
+
const pluginRegistry = require('../src/core/plugin-registry');
|
|
16
|
+
|
|
17
|
+
// Utilities
|
|
18
|
+
const logger = require('../src/utils/logger');
|
|
19
|
+
|
|
20
|
+
// AI/ML capabilities
|
|
21
|
+
const MultiModalProcessor = require('../src/ai/multimodal');
|
|
22
|
+
const AdaptiveRetrievalEngine = require('../src/ai/retrieval-engine');
|
|
23
|
+
|
|
24
|
+
// DAG engine for complex workflows
|
|
25
|
+
const { DAGEngine } = require('../src/dag/dag-engine');
|
|
26
|
+
|
|
27
|
+
// Performance and observability
|
|
28
|
+
const ParallelProcessor = require('../src/core/performance/parallel-processor');
|
|
29
|
+
const eventLogger = require('../src/core/observability/event-logger');
|
|
30
|
+
const metrics = require('../src/core/observability/metrics');
|
|
31
|
+
|
|
32
|
+
// Enterprise features
|
|
33
|
+
const { AuditLogger } = require('../src/enterprise/audit-logging');
|
|
34
|
+
const { DataGovernance } = require('../src/enterprise/data-governance');
|
|
35
|
+
|
|
36
|
+
module.exports = {
|
|
37
|
+
// Core API
|
|
38
|
+
createRagPipeline,
|
|
39
|
+
createPipeline: createRagPipeline, // Alias for backward compatibility
|
|
40
|
+
|
|
41
|
+
// Configuration
|
|
42
|
+
loadConfig,
|
|
43
|
+
validateRagrc,
|
|
44
|
+
normalizeConfig,
|
|
45
|
+
|
|
46
|
+
// Plugin system
|
|
47
|
+
pluginRegistry,
|
|
48
|
+
|
|
49
|
+
// Utilities
|
|
50
|
+
logger,
|
|
51
|
+
|
|
52
|
+
// AI/ML
|
|
53
|
+
MultiModalProcessor,
|
|
54
|
+
AdaptiveRetrievalEngine,
|
|
55
|
+
|
|
56
|
+
// Workflow engine
|
|
57
|
+
DAGEngine,
|
|
58
|
+
|
|
59
|
+
// Performance & Observability
|
|
60
|
+
ParallelProcessor,
|
|
61
|
+
eventLogger,
|
|
62
|
+
metrics,
|
|
63
|
+
|
|
64
|
+
// Enterprise
|
|
65
|
+
AuditLogger,
|
|
66
|
+
DataGovernance,
|
|
67
|
+
};
|
package/dist/index.mjs
ADDED
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* RAG Pipeline Utils - ESM Build
|
|
3
|
+
* Main entry point for ES module consumers
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* RAG Pipeline Utils - Public API
|
|
8
|
+
* Main entry point for consumers of the library
|
|
9
|
+
*/
|
|
10
|
+
|
|
11
|
+
// Core pipeline functionality
|
|
12
|
+
import { createRagPipeline } from '../src/core/create-pipeline.js';
|
|
13
|
+
|
|
14
|
+
// Configuration utilities
|
|
15
|
+
import { loadConfig } from '../src/config/load-config.js';
|
|
16
|
+
import { validateRagrc } from '../src/config/enhanced-ragrc-schema.js';
|
|
17
|
+
import { normalizeConfig } from '../src/config/normalize-config.js';
|
|
18
|
+
|
|
19
|
+
// Plugin system
|
|
20
|
+
import pluginRegistry from '../src/core/plugin-registry.js';
|
|
21
|
+
|
|
22
|
+
// Utilities
|
|
23
|
+
import logger from '../src/utils/logger.js';
|
|
24
|
+
|
|
25
|
+
// AI/ML capabilities
|
|
26
|
+
import MultiModalProcessor from '../src/ai/multimodal.js';
|
|
27
|
+
import AdaptiveRetrievalEngine from '../src/ai/retrieval-engine.js';
|
|
28
|
+
|
|
29
|
+
// DAG engine for complex workflows
|
|
30
|
+
import { DAGEngine } from '../src/dag/dag-engine.js';
|
|
31
|
+
|
|
32
|
+
// Performance and observability
|
|
33
|
+
import ParallelProcessor from '../src/core/performance/parallel-processor.js';
|
|
34
|
+
import eventLogger from '../src/core/observability/event-logger.js';
|
|
35
|
+
import metrics from '../src/core/observability/metrics.js';
|
|
36
|
+
|
|
37
|
+
// Enterprise features
|
|
38
|
+
import { AuditLogger } from '../src/enterprise/audit-logging.js';
|
|
39
|
+
import { DataGovernance } from '../src/enterprise/data-governance.js';
|
|
40
|
+
|
|
41
|
+
export {
|
|
42
|
+
validateRagrc,
|
|
43
|
+
normalizeConfig,
|
|
44
|
+
AdaptiveRetrievalEngine,
|
|
45
|
+
eventLogger,
|
|
46
|
+
metrics,
|
|
47
|
+
DataGovernance
|
|
48
|
+
};
|
|
49
|
+
|
|
50
|
+
// Backward compatibility aliases
|
|
51
|
+
export const createPipeline = createRagPipeline;
|
package/package.json
CHANGED
|
@@ -1,20 +1,44 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@devilsdev/rag-pipeline-utils",
|
|
3
|
-
"version": "2.1.
|
|
4
|
-
"description": "A
|
|
5
|
-
"main": "
|
|
3
|
+
"version": "2.1.8",
|
|
4
|
+
"description": "A comprehensive enterprise-grade toolkit for building RAG (Retrieval-Augmented Generation) pipelines with advanced AI/ML capabilities",
|
|
5
|
+
"main": "dist/index.cjs",
|
|
6
|
+
"type": "commonjs",
|
|
7
|
+
"exports": {
|
|
8
|
+
".": {
|
|
9
|
+
"require": "./dist/index.cjs",
|
|
10
|
+
"import": "./dist/index.mjs"
|
|
11
|
+
},
|
|
12
|
+
"./cli": "./bin/cli.js"
|
|
13
|
+
},
|
|
6
14
|
"bin": {
|
|
7
15
|
"rag-pipeline": "./bin/cli.js"
|
|
8
16
|
},
|
|
9
|
-
"
|
|
17
|
+
"engines": {
|
|
18
|
+
"node": ">=18"
|
|
19
|
+
},
|
|
10
20
|
"scripts": {
|
|
11
|
-
"
|
|
12
|
-
"
|
|
13
|
-
"
|
|
21
|
+
"build": "node scripts/build.js",
|
|
22
|
+
"prepack": "npm run build",
|
|
23
|
+
"prepare": "npm run build",
|
|
24
|
+
"prepublishOnly": "npm run build",
|
|
25
|
+
"guard:cjs": "node scripts/guard-cjs.js",
|
|
26
|
+
"pretest": "npm run guard:cjs && node scripts/setup.js",
|
|
27
|
+
"test": "cross-env NODE_OPTIONS=--experimental-vm-modules jest --runInBand --config jest.config.js",
|
|
28
|
+
"test:ci": "jest --coverage",
|
|
29
|
+
"test:open-handles": "jest --detectOpenHandles --runInBand",
|
|
30
|
+
"test:report": "node scripts/test-reporter.js",
|
|
31
|
+
"posttest": "node scripts/generate-test-reports.js",
|
|
32
|
+
"format": "prettier --write \"src/**/*.{js,json}\"",
|
|
14
33
|
"test:watch": "jest --watch",
|
|
15
|
-
"lint": "eslint
|
|
16
|
-
"lint:fix": "eslint . --ext .js,.jsx
|
|
17
|
-
"
|
|
34
|
+
"lint": "eslint src --ext .js --ignore-path .gitignore",
|
|
35
|
+
"lint:fix": "eslint . --ext .js,.jsx --ignore-path .gitignore --fix",
|
|
36
|
+
"lint:strict": "eslint . --ext .js,.jsx --ignore-path .gitignore --max-warnings 0",
|
|
37
|
+
"lint:errors-only": "eslint . --ext .js,.jsx --ignore-path .gitignore --quiet",
|
|
38
|
+
"lint:diagnostic": "eslint . --ext .js,.jsx --ignore-path .gitignore --format=stylish",
|
|
39
|
+
"lint:strict:ts": "eslint . --ext .js,.jsx,.ts,.tsx --max-warnings 0",
|
|
40
|
+
"lint:diagnostic:ts": "eslint . --ext .js,.jsx,.ts,.tsx --format=stylish",
|
|
41
|
+
"lint:errors-only:ts": "eslint . --ext .js,.jsx,.ts,.tsx --quiet",
|
|
18
42
|
"lint-staged": "lint-staged",
|
|
19
43
|
"postinstall": "husky install",
|
|
20
44
|
"verify:mocks": "node scripts/verify-fixture-mocks.js",
|
|
@@ -28,15 +52,51 @@
|
|
|
28
52
|
"docs:build": "docusaurus build docs-site",
|
|
29
53
|
"docs:serve": "docusaurus serve docs-site",
|
|
30
54
|
"docs:deploy": "docusaurus deploy docs-site",
|
|
31
|
-
"release:tag": "node scripts/tag-release.js",
|
|
32
55
|
"roadmap:close": "node scripts/close-done-roadmap-issues.js",
|
|
33
|
-
"labels:sync": "node scripts/ensure-roadmap-labels.js"
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
"
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
56
|
+
"labels:sync": "node scripts/ensure-roadmap-labels.js",
|
|
57
|
+
"release:tag": "node scripts/generate-release-note.js v$(node -p \"require('./package.json').version\")",
|
|
58
|
+
"security:audit": "npm audit --audit-level=moderate",
|
|
59
|
+
"security:audit:critical": "npm audit --audit-level=critical --production || echo 'Development vulnerabilities found but acceptable'",
|
|
60
|
+
"security:audit:json": "npm audit --json > security-audit-report.json || true",
|
|
61
|
+
"docs:generate": "node scripts/generate-docs.js --verbose",
|
|
62
|
+
"docs:api": "node scripts/generate-docs.js --formats=html,markdown,json",
|
|
63
|
+
"benchmark": "node scripts/benchmark.js --iterations=100 --verbose",
|
|
64
|
+
"benchmark:quick": "node scripts/benchmark.js --iterations=20",
|
|
65
|
+
"benchmark:full": "node scripts/benchmark.js --iterations=500 --verbose",
|
|
66
|
+
"dev": "node scripts/dev-tools.js menu",
|
|
67
|
+
"dev:health": "node scripts/dev-tools.js health",
|
|
68
|
+
"dev:setup": "node scripts/dev-tools.js setup",
|
|
69
|
+
"dev:clean": "node scripts/dev-tools.js clean",
|
|
70
|
+
"dev:update": "node scripts/dev-tools.js update",
|
|
71
|
+
"dev:report": "node scripts/dev-tools.js report",
|
|
72
|
+
"security:fix": "npm audit fix",
|
|
73
|
+
"security:fix:force": "npm audit fix --force",
|
|
74
|
+
"security:check": "npm audit --production && echo 'Production security check passed'",
|
|
75
|
+
"security:report": "npm run security:audit:json && echo 'Security report generated: security-audit-report.json'",
|
|
76
|
+
"ci:hardening": "node scripts/ci/harden-workflows.js",
|
|
77
|
+
"ci:audit": "node scripts/audit/gha-audit.js",
|
|
78
|
+
"ci:targeted-fixes": "node scripts/ci/targeted-security-fixes.js",
|
|
79
|
+
"ci:comprehensive-hardening": "node scripts/ci/comprehensive-hardening.js",
|
|
80
|
+
"ci:shell-security": "node scripts/ci/shell-security-hardening.js",
|
|
81
|
+
"ci:final-fixes": "node scripts/ci/final-shell-injection-fixes.js",
|
|
82
|
+
"ci:test-workflows": "node scripts/ci/test-workflows.js",
|
|
83
|
+
"ci:fix-remaining": "node scripts/ci/fix-remaining-actions.js",
|
|
84
|
+
"tests:categorize": "node scripts/test-categorizer.js",
|
|
85
|
+
"tests:affected": "node scripts/run-affected.js",
|
|
86
|
+
"tests:full": "jest --runInBand --reporters=default --json --outputFile=test-results-current.json",
|
|
87
|
+
"tests:ci": "jest --maxWorkers=50% --reporters=default --json --outputFile=test-results-current.json",
|
|
88
|
+
"test:unit": "jest __tests__/unit",
|
|
89
|
+
"test:integration": "jest __tests__/integration",
|
|
90
|
+
"test:simple": "jest --maxWorkers=1 --no-coverage",
|
|
91
|
+
"verify:pack": "node scripts/verify-npm-pack.js",
|
|
92
|
+
"verify": "npm run lint && npm run typecheck --if-present && npm test",
|
|
93
|
+
"sbom": "node scripts/generate-sbom.js",
|
|
94
|
+
"observability:setup": "node scripts/setup-observability.js",
|
|
95
|
+
"observability:start": "cd observability && ./scripts/start.sh",
|
|
96
|
+
"observability:stop": "cd observability && ./scripts/stop.sh",
|
|
97
|
+
"telemetry:init": "node -e \"require('./src/observability/telemetry').initializeTelemetry()\"",
|
|
98
|
+
"security:monitor": "node -e \"require('./src/observability/security-monitor').initializeSecurityMonitoring()\"",
|
|
99
|
+
"audit:compliance": "node -e \"require('./src/observability/audit-logger').initializeAuditLogging()\""
|
|
40
100
|
},
|
|
41
101
|
"repository": {
|
|
42
102
|
"type": "git",
|
|
@@ -52,19 +112,40 @@
|
|
|
52
112
|
"openai"
|
|
53
113
|
],
|
|
54
114
|
"author": "Ali Kahwaji",
|
|
55
|
-
"license": "
|
|
115
|
+
"license": "GPL-3.0",
|
|
56
116
|
"bugs": {
|
|
57
117
|
"url": "https://github.com/DevilsDev/rag-pipeline-utils/issues"
|
|
58
118
|
},
|
|
59
119
|
"homepage": "https://github.com/DevilsDev/rag-pipeline-utils#readme",
|
|
120
|
+
"files": [
|
|
121
|
+
"dist/",
|
|
122
|
+
"bin/",
|
|
123
|
+
"contracts/",
|
|
124
|
+
"README.md",
|
|
125
|
+
"LICENSE"
|
|
126
|
+
],
|
|
60
127
|
"publishConfig": {
|
|
61
128
|
"access": "public"
|
|
62
129
|
},
|
|
130
|
+
"lint-staged": {
|
|
131
|
+
"src/**/*.{js,ts,jsx,tsx}": "eslint --fix",
|
|
132
|
+
"**/*.{js,ts,jsx,tsx,json,md,mdx,yml,yaml,css,scss,html}": "prettier --write --ignore-unknown"
|
|
133
|
+
},
|
|
63
134
|
"devDependencies": {
|
|
64
135
|
"@babel/core": "^7.26.10",
|
|
65
136
|
"@babel/preset-env": "^7.26.9",
|
|
66
137
|
"@docusaurus/core": "^3.7.0",
|
|
67
138
|
"@docusaurus/preset-classic": "^3.7.0",
|
|
139
|
+
"@opentelemetry/api": "^1.9.0",
|
|
140
|
+
"@opentelemetry/auto-instrumentations-node": "^0.52.1",
|
|
141
|
+
"@opentelemetry/exporter-jaeger": "^1.26.0",
|
|
142
|
+
"@opentelemetry/exporter-prometheus": "^0.53.0",
|
|
143
|
+
"@opentelemetry/exporter-trace-otlp-http": "^0.53.0",
|
|
144
|
+
"@opentelemetry/resources": "^1.26.0",
|
|
145
|
+
"@opentelemetry/sdk-metrics": "^1.26.0",
|
|
146
|
+
"@opentelemetry/sdk-node": "^0.53.0",
|
|
147
|
+
"@opentelemetry/sdk-trace-base": "^1.26.0",
|
|
148
|
+
"@opentelemetry/semantic-conventions": "^1.27.0",
|
|
68
149
|
"@semantic-release/changelog": "^6.0.3",
|
|
69
150
|
"@semantic-release/commit-analyzer": "^13.0.1",
|
|
70
151
|
"@semantic-release/git": "^10.0.1",
|
|
@@ -72,22 +153,25 @@
|
|
|
72
153
|
"@semantic-release/npm": "^11.0.3",
|
|
73
154
|
"@semantic-release/release-notes-generator": "^14.0.3",
|
|
74
155
|
"@types/jest": "^29.5.14",
|
|
156
|
+
"acorn": "8.15.0",
|
|
75
157
|
"babel-jest": "^29.7.0",
|
|
76
158
|
"codecov": "^3.8.2",
|
|
77
|
-
"
|
|
78
|
-
"
|
|
159
|
+
"conventional-changelog-conventionalcommits": "^8.0.0",
|
|
160
|
+
"cross-env": "7.0.3",
|
|
79
161
|
"esbuild": "^0.25.2",
|
|
80
162
|
"eslint": "^8.57.1",
|
|
81
163
|
"eslint-plugin-storybook": "^0.12.0",
|
|
82
164
|
"husky": "^8.0.3",
|
|
83
165
|
"jest": "^29.7.0",
|
|
166
|
+
"jest-junit": "^16.0.0",
|
|
84
167
|
"jest-transform-stub": "^2.0.0",
|
|
85
168
|
"lint-staged": "^15.5.1",
|
|
86
169
|
"prettier": "^3.5.3",
|
|
87
170
|
"prop-types": "^15.8.1",
|
|
88
171
|
"rimraf": "^6.0.1",
|
|
89
172
|
"semantic-release": "^21.1.2",
|
|
90
|
-
"ts-jest": "^29.3.2"
|
|
173
|
+
"ts-jest": "^29.3.2",
|
|
174
|
+
"why-is-node-running": "^3.2.2"
|
|
91
175
|
},
|
|
92
176
|
"dependencies": {
|
|
93
177
|
"@octokit/rest": "^21.1.1",
|
|
@@ -99,6 +183,8 @@
|
|
|
99
183
|
"dotenv": "^16.5.0",
|
|
100
184
|
"fast-glob": "^3.3.3",
|
|
101
185
|
"framer-motion": "^12.7.4",
|
|
186
|
+
"inquirer": "^8.2.5",
|
|
187
|
+
"isolated-vm": "6.0.1",
|
|
102
188
|
"jsdom": "^26.1.0",
|
|
103
189
|
"octokit": "^4.1.3",
|
|
104
190
|
"openai": "^4.93.0",
|
package/.codecov.yml
DELETED
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
# .codecov.yml
|
|
2
|
-
|
|
3
|
-
codecov:
|
|
4
|
-
notify:
|
|
5
|
-
after_n_builds: 1
|
|
6
|
-
|
|
7
|
-
coverage:
|
|
8
|
-
status:
|
|
9
|
-
project:
|
|
10
|
-
default:
|
|
11
|
-
target: 90%
|
|
12
|
-
threshold: 5%
|
|
13
|
-
patch:
|
|
14
|
-
default:
|
|
15
|
-
target: 90%
|
|
16
|
-
threshold: 5%
|
|
17
|
-
|
|
18
|
-
comment:
|
|
19
|
-
layout: "reach, diff, flags, files"
|
|
20
|
-
behavior: default
|
|
21
|
-
require_changes: false
|
package/.dockerignore
DELETED
package/.eslintignore
DELETED
package/.eslintrc.json
DELETED
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"env": {
|
|
3
|
-
"es2022": true,
|
|
4
|
-
"node": true,
|
|
5
|
-
"jest": true,
|
|
6
|
-
"browser": true
|
|
7
|
-
},
|
|
8
|
-
"extends": [
|
|
9
|
-
"eslint:recommended",
|
|
10
|
-
"plugin:storybook/recommended"
|
|
11
|
-
],
|
|
12
|
-
"parserOptions": {
|
|
13
|
-
"ecmaVersion": "latest",
|
|
14
|
-
"sourceType": "module"
|
|
15
|
-
},
|
|
16
|
-
"rules": {
|
|
17
|
-
"no-unused-vars": "warn",
|
|
18
|
-
"no-console": "off",
|
|
19
|
-
"semi": [
|
|
20
|
-
"error",
|
|
21
|
-
"always"
|
|
22
|
-
],
|
|
23
|
-
"quotes": [
|
|
24
|
-
"error",
|
|
25
|
-
"single"
|
|
26
|
-
]
|
|
27
|
-
}
|
|
28
|
-
}
|