@revenium/openai 1.0.12 → 1.0.14
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/.env.example +10 -15
- package/CHANGELOG.md +59 -0
- package/CODE_OF_CONDUCT.md +57 -0
- package/CONTRIBUTING.md +38 -0
- package/README.md +109 -515
- package/SECURITY.md +34 -0
- package/dist/cjs/core/client/index.js +14 -0
- package/dist/cjs/core/client/index.js.map +1 -0
- package/dist/cjs/core/client/manager.js +109 -0
- package/dist/cjs/core/client/manager.js.map +1 -0
- package/dist/cjs/core/config/azure-config.js +5 -17
- package/dist/cjs/core/config/azure-config.js.map +1 -1
- package/dist/cjs/core/config/index.js +2 -2
- package/dist/cjs/core/config/index.js.map +1 -1
- package/dist/cjs/core/config/loader.js +34 -14
- package/dist/cjs/core/config/loader.js.map +1 -1
- package/dist/cjs/core/config/manager.js +12 -5
- package/dist/cjs/core/config/manager.js.map +1 -1
- package/dist/cjs/core/config/validator.js +3 -45
- package/dist/cjs/core/config/validator.js.map +1 -1
- package/dist/cjs/core/middleware/index.js +17 -0
- package/dist/cjs/core/middleware/index.js.map +1 -0
- package/dist/cjs/core/middleware/interfaces.js +361 -0
- package/dist/cjs/core/middleware/interfaces.js.map +1 -0
- package/dist/cjs/core/middleware/revenium-client.js +142 -0
- package/dist/cjs/core/middleware/revenium-client.js.map +1 -0
- package/dist/cjs/core/providers/detector.js +45 -23
- package/dist/cjs/core/providers/detector.js.map +1 -1
- package/dist/cjs/core/providers/index.js +2 -1
- package/dist/cjs/core/providers/index.js.map +1 -1
- package/dist/cjs/core/tracking/api-client.js +14 -13
- package/dist/cjs/core/tracking/api-client.js.map +1 -1
- package/dist/cjs/core/tracking/payload-builder.js +30 -35
- package/dist/cjs/core/tracking/payload-builder.js.map +1 -1
- package/dist/cjs/core/tracking/usage-tracker.js +22 -18
- package/dist/cjs/core/tracking/usage-tracker.js.map +1 -1
- package/dist/cjs/index.js +26 -174
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/types/index.js +0 -8
- package/dist/cjs/types/index.js.map +1 -1
- package/dist/cjs/types/openai-augmentation.js +0 -49
- package/dist/cjs/types/openai-augmentation.js.map +1 -1
- package/dist/cjs/utils/constants.js +17 -20
- package/dist/cjs/utils/constants.js.map +1 -1
- package/dist/cjs/utils/error-handler.js +18 -14
- package/dist/cjs/utils/error-handler.js.map +1 -1
- package/dist/cjs/utils/metadata-builder.js +27 -19
- package/dist/cjs/utils/metadata-builder.js.map +1 -1
- package/dist/cjs/utils/provider-detection.js +25 -28
- package/dist/cjs/utils/provider-detection.js.map +1 -1
- package/dist/cjs/utils/stop-reason-mapper.js +4 -0
- package/dist/cjs/utils/stop-reason-mapper.js.map +1 -1
- package/dist/cjs/utils/url-builder.js +3 -3
- package/dist/esm/core/client/index.js +6 -0
- package/dist/esm/core/client/index.js.map +1 -0
- package/dist/esm/core/client/manager.js +102 -0
- package/dist/esm/core/client/manager.js.map +1 -0
- package/dist/esm/core/config/azure-config.js +6 -18
- package/dist/esm/core/config/azure-config.js.map +1 -1
- package/dist/esm/core/config/index.js +5 -4
- package/dist/esm/core/config/index.js.map +1 -1
- package/dist/esm/core/config/loader.js +33 -13
- package/dist/esm/core/config/loader.js.map +1 -1
- package/dist/esm/core/config/manager.js +14 -7
- package/dist/esm/core/config/manager.js.map +1 -1
- package/dist/esm/core/config/validator.js +3 -44
- package/dist/esm/core/config/validator.js.map +1 -1
- package/dist/esm/core/middleware/index.js +8 -0
- package/dist/esm/core/middleware/index.js.map +1 -0
- package/dist/esm/core/middleware/interfaces.js +353 -0
- package/dist/esm/core/middleware/interfaces.js.map +1 -0
- package/dist/esm/core/middleware/revenium-client.js +105 -0
- package/dist/esm/core/middleware/revenium-client.js.map +1 -0
- package/dist/esm/core/providers/detector.js +43 -22
- package/dist/esm/core/providers/detector.js.map +1 -1
- package/dist/esm/core/providers/index.js +2 -2
- package/dist/esm/core/providers/index.js.map +1 -1
- package/dist/esm/core/tracking/api-client.js +13 -12
- package/dist/esm/core/tracking/api-client.js.map +1 -1
- package/dist/esm/core/tracking/payload-builder.js +31 -36
- package/dist/esm/core/tracking/payload-builder.js.map +1 -1
- package/dist/esm/core/tracking/usage-tracker.js +24 -20
- package/dist/esm/core/tracking/usage-tracker.js.map +1 -1
- package/dist/esm/index.js +9 -157
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/types/index.js +2 -10
- package/dist/esm/types/index.js.map +1 -1
- package/dist/esm/types/openai-augmentation.js +0 -49
- package/dist/esm/types/openai-augmentation.js.map +1 -1
- package/dist/esm/utils/constants.js +16 -19
- package/dist/esm/utils/constants.js.map +1 -1
- package/dist/esm/utils/error-handler.js +19 -15
- package/dist/esm/utils/error-handler.js.map +1 -1
- package/dist/esm/utils/metadata-builder.js +27 -19
- package/dist/esm/utils/metadata-builder.js.map +1 -1
- package/dist/esm/utils/provider-detection.js +26 -29
- package/dist/esm/utils/provider-detection.js.map +1 -1
- package/dist/esm/utils/stop-reason-mapper.js +4 -0
- package/dist/esm/utils/stop-reason-mapper.js.map +1 -1
- package/dist/esm/utils/url-builder.js +3 -3
- package/dist/types/core/client/index.d.ts +6 -0
- package/dist/types/core/client/index.d.ts.map +1 -0
- package/dist/types/core/client/manager.d.ts +32 -0
- package/dist/types/core/client/manager.d.ts.map +1 -0
- package/dist/types/core/config/azure-config.d.ts +2 -2
- package/dist/types/core/config/azure-config.d.ts.map +1 -1
- package/dist/types/core/config/index.d.ts +4 -4
- package/dist/types/core/config/index.d.ts.map +1 -1
- package/dist/types/core/config/loader.d.ts +3 -1
- package/dist/types/core/config/loader.d.ts.map +1 -1
- package/dist/types/core/config/manager.d.ts +1 -1
- package/dist/types/core/config/manager.d.ts.map +1 -1
- package/dist/types/core/config/validator.d.ts +1 -12
- package/dist/types/core/config/validator.d.ts.map +1 -1
- package/dist/types/core/middleware/index.d.ts +8 -0
- package/dist/types/core/middleware/index.d.ts.map +1 -0
- package/dist/types/core/middleware/interfaces.d.ts +74 -0
- package/dist/types/core/middleware/interfaces.d.ts.map +1 -0
- package/dist/types/core/middleware/revenium-client.d.ts +58 -0
- package/dist/types/core/middleware/revenium-client.d.ts.map +1 -0
- package/dist/types/core/providers/detector.d.ts +9 -2
- package/dist/types/core/providers/detector.d.ts.map +1 -1
- package/dist/types/core/providers/index.d.ts +2 -2
- package/dist/types/core/providers/index.d.ts.map +1 -1
- package/dist/types/core/tracking/api-client.d.ts +1 -1
- package/dist/types/core/tracking/api-client.d.ts.map +1 -1
- package/dist/types/core/tracking/payload-builder.d.ts +3 -3
- package/dist/types/core/tracking/payload-builder.d.ts.map +1 -1
- package/dist/types/core/tracking/usage-tracker.d.ts +2 -2
- package/dist/types/core/tracking/usage-tracker.d.ts.map +1 -1
- package/dist/types/index.d.ts +11 -114
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/types/function-parameters.d.ts +2 -23
- package/dist/types/types/function-parameters.d.ts.map +1 -1
- package/dist/types/types/index.d.ts +17 -115
- package/dist/types/types/index.d.ts.map +1 -1
- package/dist/types/types/openai-augmentation.d.ts +4 -139
- package/dist/types/types/openai-augmentation.d.ts.map +1 -1
- package/dist/types/utils/constants.d.ts +7 -1
- package/dist/types/utils/constants.d.ts.map +1 -1
- package/dist/types/utils/error-handler.d.ts +2 -2
- package/dist/types/utils/error-handler.d.ts.map +1 -1
- package/dist/types/utils/metadata-builder.d.ts +4 -3
- package/dist/types/utils/metadata-builder.d.ts.map +1 -1
- package/dist/types/utils/provider-detection.d.ts +3 -3
- package/dist/types/utils/provider-detection.d.ts.map +1 -1
- package/dist/types/utils/stop-reason-mapper.d.ts.map +1 -1
- package/dist/types/utils/url-builder.d.ts +3 -3
- package/examples/README.md +270 -224
- package/examples/azure/basic.ts +62 -0
- package/examples/azure/responses-basic.ts +45 -0
- package/examples/azure/responses-stream.ts +61 -0
- package/examples/azure/stream.ts +56 -0
- package/examples/getting_started.ts +31 -43
- package/examples/openai/basic.ts +45 -0
- package/examples/openai/metadata.ts +67 -0
- package/examples/openai/responses-basic.ts +44 -0
- package/examples/openai/responses-embed.ts +34 -0
- package/examples/openai/responses-streaming.ts +63 -0
- package/examples/openai/streaming.ts +59 -0
- package/package.json +20 -13
- package/dist/cjs/core/wrapper/index.js +0 -15
- package/dist/cjs/core/wrapper/index.js.map +0 -1
- package/dist/cjs/core/wrapper/instance-patcher.js +0 -202
- package/dist/cjs/core/wrapper/instance-patcher.js.map +0 -1
- package/dist/cjs/core/wrapper/request-handler.js +0 -317
- package/dist/cjs/core/wrapper/request-handler.js.map +0 -1
- package/dist/cjs/core/wrapper/stream-wrapper.js +0 -82
- package/dist/cjs/core/wrapper/stream-wrapper.js.map +0 -1
- package/dist/cjs/utils/azure-model-resolver.js +0 -211
- package/dist/cjs/utils/azure-model-resolver.js.map +0 -1
- package/dist/cjs/utils/request-handler-factory.js +0 -185
- package/dist/cjs/utils/request-handler-factory.js.map +0 -1
- package/dist/esm/core/wrapper/index.js +0 -9
- package/dist/esm/core/wrapper/index.js.map +0 -1
- package/dist/esm/core/wrapper/instance-patcher.js +0 -199
- package/dist/esm/core/wrapper/instance-patcher.js.map +0 -1
- package/dist/esm/core/wrapper/request-handler.js +0 -310
- package/dist/esm/core/wrapper/request-handler.js.map +0 -1
- package/dist/esm/core/wrapper/stream-wrapper.js +0 -79
- package/dist/esm/core/wrapper/stream-wrapper.js.map +0 -1
- package/dist/esm/utils/azure-model-resolver.js +0 -204
- package/dist/esm/utils/azure-model-resolver.js.map +0 -1
- package/dist/esm/utils/request-handler-factory.js +0 -146
- package/dist/esm/utils/request-handler-factory.js.map +0 -1
- package/dist/types/core/wrapper/index.d.ts +0 -8
- package/dist/types/core/wrapper/index.d.ts.map +0 -1
- package/dist/types/core/wrapper/instance-patcher.d.ts +0 -33
- package/dist/types/core/wrapper/instance-patcher.d.ts.map +0 -1
- package/dist/types/core/wrapper/request-handler.d.ts +0 -29
- package/dist/types/core/wrapper/request-handler.d.ts.map +0 -1
- package/dist/types/core/wrapper/stream-wrapper.d.ts +0 -13
- package/dist/types/core/wrapper/stream-wrapper.d.ts.map +0 -1
- package/dist/types/utils/azure-model-resolver.d.ts +0 -41
- package/dist/types/utils/azure-model-resolver.d.ts.map +0 -1
- package/dist/types/utils/request-handler-factory.d.ts +0 -81
- package/dist/types/utils/request-handler-factory.d.ts.map +0 -1
- package/examples/azure-basic.ts +0 -206
- package/examples/azure-responses-basic.ts +0 -233
- package/examples/azure-responses-streaming.ts +0 -255
- package/examples/azure-streaming.ts +0 -209
- package/examples/openai-basic.ts +0 -147
- package/examples/openai-function-calling.ts +0 -259
- package/examples/openai-responses-basic.ts +0 -212
- package/examples/openai-responses-streaming.ts +0 -232
- package/examples/openai-streaming.ts +0 -172
- package/examples/openai-vision.ts +0 -289
- package/src/core/config/azure-config.ts +0 -72
- package/src/core/config/index.ts +0 -23
- package/src/core/config/loader.ts +0 -66
- package/src/core/config/manager.ts +0 -94
- package/src/core/config/validator.ts +0 -89
- package/src/core/providers/detector.ts +0 -159
- package/src/core/providers/index.ts +0 -16
- package/src/core/tracking/api-client.ts +0 -78
- package/src/core/tracking/index.ts +0 -21
- package/src/core/tracking/payload-builder.ts +0 -132
- package/src/core/tracking/usage-tracker.ts +0 -189
- package/src/core/wrapper/index.ts +0 -9
- package/src/core/wrapper/instance-patcher.ts +0 -288
- package/src/core/wrapper/request-handler.ts +0 -423
- package/src/core/wrapper/stream-wrapper.ts +0 -100
- package/src/index.ts +0 -336
- package/src/types/function-parameters.ts +0 -251
- package/src/types/index.ts +0 -313
- package/src/types/openai-augmentation.ts +0 -233
- package/src/types/responses-api.ts +0 -308
- package/src/utils/azure-model-resolver.ts +0 -220
- package/src/utils/constants.ts +0 -21
- package/src/utils/error-handler.ts +0 -251
- package/src/utils/metadata-builder.ts +0 -219
- package/src/utils/provider-detection.ts +0 -257
- package/src/utils/request-handler-factory.ts +0 -285
- package/src/utils/stop-reason-mapper.ts +0 -74
- package/src/utils/type-guards.ts +0 -202
- package/src/utils/url-builder.ts +0 -68
package/.env.example
CHANGED
|
@@ -1,20 +1,15 @@
|
|
|
1
|
-
# Revenium
|
|
2
|
-
# Copy this file to .env and fill in your actual values
|
|
3
|
-
|
|
4
|
-
# Required: Your Revenium API key (starts with hak_)
|
|
1
|
+
# Revenium Configuration (Required)
|
|
5
2
|
REVENIUM_METERING_API_KEY=hak_your_revenium_api_key_here
|
|
3
|
+
REVENIUM_METERING_BASE_URL=https://api.revenium.ai
|
|
6
4
|
|
|
7
|
-
#
|
|
8
|
-
|
|
5
|
+
# OpenAI Configuration (Required for OpenAI native API)
|
|
6
|
+
OPENAI_API_KEY=sk-your_openai_api_key_here
|
|
9
7
|
|
|
10
|
-
#
|
|
11
|
-
|
|
8
|
+
# Azure OpenAI Configuration (Optional - for Azure OpenAI support)
|
|
9
|
+
AZURE_OPENAI_API_KEY=your_azure_openai_api_key
|
|
10
|
+
AZURE_OPENAI_ENDPOINT=https://your-resource.openai.azure.com/
|
|
11
|
+
AZURE_OPENAI_API_VERSION=your_azure_openai_api_version
|
|
12
12
|
|
|
13
|
-
#
|
|
14
|
-
|
|
15
|
-
AZURE_OPENAI_API_KEY=your-azure-openai-api-key-here
|
|
16
|
-
AZURE_OPENAI_DEPLOYMENT=your-deployment-name-here
|
|
17
|
-
AZURE_OPENAI_API_VERSION=2024-12-01-preview
|
|
13
|
+
# Debug Configuration (Optional)
|
|
14
|
+
REVENIUM_DEBUG=false # Set to true to enable debug logging
|
|
18
15
|
|
|
19
|
-
# Optional: Enable debug logging
|
|
20
|
-
REVENIUM_DEBUG=false
|
package/CHANGELOG.md
CHANGED
|
@@ -5,46 +5,105 @@ All notable changes to this project will be documented in this file.
|
|
|
5
5
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
6
6
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
7
|
|
|
8
|
+
## [1.0.14] - 2025-11-14
|
|
9
|
+
|
|
10
|
+
### Changed
|
|
11
|
+
|
|
12
|
+
- Updated Node.js requirement from >=16.0.0 to >=18.0.0 (LTS standard)
|
|
13
|
+
- Improved package distribution to exclude source files, include only compiled artifacts
|
|
14
|
+
- Enhanced README with governance file references (Contributing, Code of Conduct, Security)
|
|
15
|
+
|
|
16
|
+
### Fixed
|
|
17
|
+
|
|
18
|
+
- Updated dashboard URLs from app.revenium.io to app.revenium.ai in examples documentation
|
|
19
|
+
|
|
20
|
+
## [1.0.13] - 2025-11-06
|
|
21
|
+
|
|
22
|
+
### Added
|
|
23
|
+
|
|
24
|
+
- Configure() function for manual configuration
|
|
25
|
+
- COST_LIMIT and COMPLETION_LIMIT stop reasons to mapper (per API spec)
|
|
26
|
+
- Support for all 7 operationType enum values (CHAT, GENERATE, EMBED, CLASSIFY, SUMMARIZE, TRANSLATE, OTHER)
|
|
27
|
+
|
|
28
|
+
### Changed
|
|
29
|
+
|
|
30
|
+
- **BREAKING:** responseQualityScore now uses 0.0-1.0 scale (was 0-100) per updated API specification
|
|
31
|
+
- **API URL:** All references updated from api.revenium.io to api.revenium.ai (new production domain)
|
|
32
|
+
- **API Compliance:** provider value changed from 'OPENAI' to 'OpenAI' (proper casing per spec)
|
|
33
|
+
- **API Compliance:** modelSource changed to 'OPENAI' for direct OpenAI, 'AZURE_OPENAI' for Azure
|
|
34
|
+
- **API Compliance:** middlewareSource changed from 'nodejs' to 'revenium-openai-node' per spec format
|
|
35
|
+
- **API Compliance:** cacheCreationTokenCount now undefined (not 0) when provider doesn't report
|
|
36
|
+
- **API Compliance:** cacheReadTokenCount now uses ?? operator (not ||) to preserve 0 values
|
|
37
|
+
- **API Compliance:** timeToFirstToken now undefined (not hardcoded) until real TTFB tracking implemented
|
|
38
|
+
- Simplified main README from 675 to 386 lines
|
|
39
|
+
- Standardized Azure API versions to 2024-12-01-preview across all files
|
|
40
|
+
- Email addresses now masked in debug logs for PII protection
|
|
41
|
+
- All examples updated to use 0.0-1.0 scale for responseQualityScore
|
|
42
|
+
|
|
43
|
+
### Fixed
|
|
44
|
+
|
|
45
|
+
- Removed broken file references from examples documentation
|
|
46
|
+
- Removed non-existent config options from documentation (apiTimeout, failSilent, maxRetries)
|
|
47
|
+
- Removed misleading "custom fields" claim from Features section
|
|
48
|
+
- config.debug property now properly enables debug logging
|
|
49
|
+
- Updated OpenAI version requirement to match peer dependency (v5.0.0+)
|
|
50
|
+
- Removed overpromised time-to-first-token metric claim
|
|
51
|
+
- Removed taskId field from all files (field does not exist in API spec per code review feedback)
|
|
52
|
+
- Added CANCELLED stop reason to mapper for completeness
|
|
53
|
+
- validateMetadata now checks 0.0-1.0 scale for responseQualityScore
|
|
54
|
+
- Fallback provider detection now uses 'OpenAI' not 'OPENAI' (proper casing)
|
|
55
|
+
- Embeddings now send undefined for cache tokens (was incorrectly sending 0)
|
|
56
|
+
- reasoningTokenCount now optional (undefined when not reported, per spec)
|
|
57
|
+
|
|
8
58
|
## [1.0.12] - 2025-10-30
|
|
9
59
|
|
|
10
60
|
### Changed
|
|
61
|
+
|
|
11
62
|
- Improved documentation structure and Getting Started tutorial
|
|
12
63
|
- Enhanced package distribution to include TypeScript source files
|
|
13
64
|
|
|
14
65
|
### Fixed
|
|
66
|
+
|
|
15
67
|
- Repository configuration updates
|
|
16
68
|
|
|
17
69
|
## [1.0.11] - 2025-10-21
|
|
18
70
|
|
|
19
71
|
### Added
|
|
72
|
+
|
|
20
73
|
- Examples now included in npm package
|
|
21
74
|
- Comprehensive examples documentation
|
|
22
75
|
|
|
23
76
|
### Changed
|
|
77
|
+
|
|
24
78
|
- Updated API endpoint configuration
|
|
25
79
|
- Improved documentation structure
|
|
26
80
|
|
|
27
81
|
## [1.0.10] - 2025-10-17
|
|
28
82
|
|
|
29
83
|
### Added
|
|
84
|
+
|
|
30
85
|
- Support for OpenAI Responses API
|
|
31
86
|
|
|
32
87
|
### Changed
|
|
88
|
+
|
|
33
89
|
- Enhanced documentation and examples
|
|
34
90
|
|
|
35
91
|
## [1.0.9] - 2025-10-16
|
|
36
92
|
|
|
37
93
|
### Changed
|
|
94
|
+
|
|
38
95
|
- Bug fixes and stability improvements
|
|
39
96
|
|
|
40
97
|
## [1.0.8] - 2025-10-15
|
|
41
98
|
|
|
42
99
|
### Added
|
|
100
|
+
|
|
43
101
|
- Initial release with OpenAI usage tracking
|
|
44
102
|
- Support for streaming responses and function calling
|
|
45
103
|
- Azure OpenAI support
|
|
46
104
|
- TypeScript support with native type integration
|
|
47
105
|
|
|
106
|
+
[1.0.13]: https://github.com/revenium/revenium-middleware-openai-node/releases/tag/v1.0.13
|
|
48
107
|
[1.0.12]: https://github.com/revenium/revenium-middleware-openai-node/releases/tag/v1.0.12
|
|
49
108
|
[1.0.11]: https://github.com/revenium/revenium-middleware-openai-node/releases/tag/v1.0.11
|
|
50
109
|
[1.0.10]: https://github.com/revenium/revenium-middleware-openai-node/releases/tag/v1.0.10
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
# Contributor Covenant Code of Conduct
|
|
2
|
+
|
|
3
|
+
## Our Pledge
|
|
4
|
+
We as members, contributors, and leaders pledge to make participation in our
|
|
5
|
+
community a harassment-free experience for everyone, regardless of age, body
|
|
6
|
+
size, visible or invisible disability, ethnicity, sex characteristics, gender
|
|
7
|
+
identity and expression, level of experience, education, socio-economic status,
|
|
8
|
+
nationality, personal appearance, race, caste, color, religion, or sexual
|
|
9
|
+
identity and orientation.
|
|
10
|
+
|
|
11
|
+
We pledge to act and interact in ways that contribute to an open, welcoming,
|
|
12
|
+
diverse, inclusive, and healthy community.
|
|
13
|
+
|
|
14
|
+
## Our Standards
|
|
15
|
+
Examples of behavior that contributes to a positive environment include:
|
|
16
|
+
- Demonstrating empathy and kindness toward other people
|
|
17
|
+
- Being respectful of differing opinions, viewpoints, and experiences
|
|
18
|
+
- Giving and gracefully accepting constructive feedback
|
|
19
|
+
- Accepting responsibility and apologizing to those affected by mistakes
|
|
20
|
+
- Focusing on what is best for the community
|
|
21
|
+
|
|
22
|
+
Examples of unacceptable behavior include:
|
|
23
|
+
- The use of sexualized language or imagery, and sexual attention or advances
|
|
24
|
+
- Trolling, insulting or derogatory comments, and personal or political attacks
|
|
25
|
+
- Public or private harassment
|
|
26
|
+
- Publishing others' private information without explicit permission
|
|
27
|
+
- Other conduct which could reasonably be considered inappropriate
|
|
28
|
+
|
|
29
|
+
## Enforcement Responsibilities
|
|
30
|
+
Community leaders are responsible for clarifying and enforcing our standards of
|
|
31
|
+
acceptable behavior and will take appropriate and fair corrective action.
|
|
32
|
+
|
|
33
|
+
## Scope
|
|
34
|
+
This Code of Conduct applies within all community spaces, and also applies when
|
|
35
|
+
an individual is officially representing the project in public spaces.
|
|
36
|
+
|
|
37
|
+
## Enforcement
|
|
38
|
+
Instances of abusive, harassing, or otherwise unacceptable behavior may be
|
|
39
|
+
reported by contacting the project team at **support@revenium.io**.
|
|
40
|
+
All complaints will be reviewed and investigated promptly and fairly.
|
|
41
|
+
|
|
42
|
+
The project team is obligated to respect the privacy and security of the
|
|
43
|
+
reporter of any incident.
|
|
44
|
+
|
|
45
|
+
## Enforcement Guidelines
|
|
46
|
+
Community leaders will follow these guidelines in determining the consequences:
|
|
47
|
+
1. **Correction** – Private, written warning.
|
|
48
|
+
2. **Warning** – Clear and public warning of violation.
|
|
49
|
+
3. **Temporary Ban** – Temporary ban from community interaction.
|
|
50
|
+
4. **Permanent Ban** – Permanent removal from community interaction.
|
|
51
|
+
|
|
52
|
+
## Attribution
|
|
53
|
+
This Code of Conduct is adapted from the [Contributor Covenant][homepage],
|
|
54
|
+
version 2.1, available at
|
|
55
|
+
<https://www.contributor-covenant.org/version/2/1/code_of_conduct.html>.
|
|
56
|
+
|
|
57
|
+
[homepage]: https://www.contributor-covenant.org
|
package/CONTRIBUTING.md
ADDED
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
# Contributing
|
|
2
|
+
|
|
3
|
+
Thank you for your interest in contributing to this project!
|
|
4
|
+
|
|
5
|
+
## Getting Started
|
|
6
|
+
|
|
7
|
+
1. Fork the repository and create a feature branch
|
|
8
|
+
2. Make your changes following existing code patterns
|
|
9
|
+
3. Test your changes
|
|
10
|
+
4. Submit a pull request with a clear description
|
|
11
|
+
|
|
12
|
+
## What to Contribute
|
|
13
|
+
|
|
14
|
+
- Bug fixes and improvements
|
|
15
|
+
- Documentation updates
|
|
16
|
+
- Test coverage improvements
|
|
17
|
+
- Performance optimizations
|
|
18
|
+
|
|
19
|
+
## Guidelines
|
|
20
|
+
|
|
21
|
+
- Follow the existing code style
|
|
22
|
+
- Include tests for new functionality when applicable
|
|
23
|
+
- Update documentation if needed
|
|
24
|
+
- Keep changes focused and atomic
|
|
25
|
+
|
|
26
|
+
## Questions?
|
|
27
|
+
|
|
28
|
+
- Check existing issues first
|
|
29
|
+
- For bugs: Create an issue with reproduction steps
|
|
30
|
+
- For questions: Email support@revenium.io
|
|
31
|
+
|
|
32
|
+
## Security
|
|
33
|
+
|
|
34
|
+
For security vulnerabilities, please follow our [Security Policy](https://github.com/revenium/revenium-middleware-openai-node/blob/HEAD/SECURITY.md) - do not create public issues.
|
|
35
|
+
|
|
36
|
+
## License
|
|
37
|
+
|
|
38
|
+
By contributing, you agree your contributions will be licensed under the same license as this project.
|