@plasius/ai 1.1.16 → 1.1.18
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/CHANGELOG.md +5 -0
- package/README.md +22 -0
- package/dist/platform/index.d.ts.map +1 -1
- package/dist/platform/index.js +2 -1
- package/dist-cjs/platform/index.d.ts.map +1 -1
- package/dist-cjs/platform/index.js +2 -1
- package/docs/adrs/adr-0005-internal-completion-field-exposure.md +18 -0
- package/docs/adrs/index.md +1 -0
- package/package.json +18 -18
- package/src/platform/index.ts +2 -1
package/CHANGELOG.md
CHANGED
|
@@ -9,6 +9,7 @@ The format is based on **[Keep a Changelog](https://keepachangelog.com/en/1.1.0/
|
|
|
9
9
|
## [Unreleased]
|
|
10
10
|
|
|
11
11
|
- **Added**
|
|
12
|
+
- Added completion-schema serialization tests covering public and internal payload variants.
|
|
12
13
|
- Added built-in provider adapter factories:
|
|
13
14
|
- `createOpenAIAdapter` for chat, speech synthesis, transcription, image generation, and model generation.
|
|
14
15
|
- `createGeminiAdapter` for chat, image generation, and model generation.
|
|
@@ -23,6 +24,8 @@ The format is based on **[Keep a Changelog](https://keepachangelog.com/en/1.1.0/
|
|
|
23
24
|
- Added `createVideoProviderPlatform` to compose `AIPlatform` video/balance behavior from adapters.
|
|
24
25
|
|
|
25
26
|
- **Changed**
|
|
27
|
+
- Raised the minimum `@plasius/schema` dependency to `^1.2.6`.
|
|
28
|
+
- Marked completion `partitionKey` as an internal field so default serialization exposes client-safe payloads.
|
|
26
29
|
- Updated docs and examples to use built-in OpenAI/Gemini adapter factories with developer-supplied API keys.
|
|
27
30
|
- Hardened OpenAI/Gemini/video HTTP adapters with internet-friendly client behavior:
|
|
28
31
|
- request timeout defaults
|
|
@@ -42,11 +45,13 @@ The format is based on **[Keep a Changelog](https://keepachangelog.com/en/1.1.0/
|
|
|
42
45
|
- CD install step now runs without `--legacy-peer-deps`.
|
|
43
46
|
|
|
44
47
|
- **Fixed**
|
|
48
|
+
- Prevented completion persistence partition keys from being treated as client-safe fields by default.
|
|
45
49
|
- Enforced CommonJS runtime compatibility for dual-build output by generating and validating `dist-cjs/package.json` (`type: commonjs`) during build and package verification.
|
|
46
50
|
- `pack:check` now passes vendor-namespace checks for `src/**` by using generic provider naming in runtime/editor code.
|
|
47
51
|
- Added extended OpenAI adapter error-path tests and video-provider platform tests to close coverage gaps before release.
|
|
48
52
|
|
|
49
53
|
- **Security**
|
|
54
|
+
- Reduced accidental leakage risk for completion ownership metadata in serialized payloads.
|
|
50
55
|
- Removed `depcheck` (and its `multimatch`/`minimatch` chain) from devDependencies to resolve reported high-severity audit findings.
|
|
51
56
|
|
|
52
57
|
## [1.0.4] - 2026-02-21
|
package/README.md
CHANGED
|
@@ -127,6 +127,8 @@ void platform;
|
|
|
127
127
|
- `modelCompletionSchema`
|
|
128
128
|
- `balanceCompletionSchema`
|
|
129
129
|
|
|
130
|
+
Completion schemas validate persisted records, including the internal `partitionKey` used to associate requests with a user or system actor. When returning completion payloads to clients, prefer `completionSchema.serialize(...)` so internal fields stay out of the default response shape.
|
|
131
|
+
|
|
130
132
|
## Documentation
|
|
131
133
|
|
|
132
134
|
- Architecture: [`docs/architecture.md`](./docs/architecture.md)
|
|
@@ -209,6 +211,26 @@ const platform = await createAdapterPlatform("user-1", {
|
|
|
209
211
|
void platform;
|
|
210
212
|
```
|
|
211
213
|
|
|
214
|
+
### Client-safe completion payloads
|
|
215
|
+
|
|
216
|
+
```ts
|
|
217
|
+
import { completionSchema } from "@plasius/ai";
|
|
218
|
+
|
|
219
|
+
const persistedCompletion = {
|
|
220
|
+
id: "completion-1",
|
|
221
|
+
type: "chat",
|
|
222
|
+
model: "gpt-4.1-mini",
|
|
223
|
+
durationMs: 42,
|
|
224
|
+
createdAt: new Date().toISOString(),
|
|
225
|
+
partitionKey: "user-1",
|
|
226
|
+
};
|
|
227
|
+
|
|
228
|
+
const publicPayload = completionSchema.serialize(persistedCompletion);
|
|
229
|
+
// partitionKey is omitted by default.
|
|
230
|
+
|
|
231
|
+
void publicPayload;
|
|
232
|
+
```
|
|
233
|
+
|
|
212
234
|
### Generic Video Adapter Composition
|
|
213
235
|
|
|
214
236
|
```ts
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/platform/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAe,MAAM,iBAAiB,CAAC;AAEjE,eAAO,MAAM,gBAAgB;;;;;;;;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/platform/index.ts"],"names":[],"mappings":"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"}
|
package/dist/platform/index.js
CHANGED
|
@@ -23,7 +23,8 @@ export const completionSchema = createSchema({
|
|
|
23
23
|
partitionKey: field
|
|
24
24
|
.string()
|
|
25
25
|
.description("User or system identifier that made the request")
|
|
26
|
-
.version("1.0")
|
|
26
|
+
.version("1.0")
|
|
27
|
+
.internal(),
|
|
27
28
|
usage: field
|
|
28
29
|
.object({})
|
|
29
30
|
.description("Optional usage metrics like token count or cost")
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/platform/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAe,MAAM,iBAAiB,CAAC;AAEjE,eAAO,MAAM,gBAAgB;;;;;;;;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/platform/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -26,7 +26,8 @@ exports.completionSchema = (0, schema_1.createSchema)({
|
|
|
26
26
|
partitionKey: schema_1.field
|
|
27
27
|
.string()
|
|
28
28
|
.description("User or system identifier that made the request")
|
|
29
|
-
.version("1.0")
|
|
29
|
+
.version("1.0")
|
|
30
|
+
.internal(),
|
|
30
31
|
usage: schema_1.field
|
|
31
32
|
.object({})
|
|
32
33
|
.description("Optional usage metrics like token count or cost")
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
# ADR-0005: Internal Completion Field Exposure
|
|
2
|
+
|
|
3
|
+
- Date: 2026-03-09
|
|
4
|
+
- Status: Accepted
|
|
5
|
+
|
|
6
|
+
## Context
|
|
7
|
+
|
|
8
|
+
`@plasius/ai` completion records include a `partitionKey` that ties persisted completions to an internal user or system actor. Consumers also use the same schema objects when shaping payloads for client responses. Without an explicit exposure rule, that persistence metadata can be serialized into client-facing payloads by default.
|
|
9
|
+
|
|
10
|
+
## Decision
|
|
11
|
+
|
|
12
|
+
Mark `completionSchema.partitionKey` as an internal field using `@plasius/schema` exposure metadata and treat `completionSchema.serialize(...)` as the default path for client-safe completion payloads.
|
|
13
|
+
|
|
14
|
+
## Consequences
|
|
15
|
+
|
|
16
|
+
- Public serialization omits ownership metadata by default.
|
|
17
|
+
- Validation still accepts the full persisted completion shape.
|
|
18
|
+
- Callers that need internal metadata for server-side workflows must opt in explicitly during serialization.
|
package/docs/adrs/index.md
CHANGED
|
@@ -4,3 +4,4 @@
|
|
|
4
4
|
- [ADR-0002: Public Repository Governance Baseline](./adr-0002-public-repo-governance.md)
|
|
5
5
|
- [ADR-0003: Contracts-First Documentation Baseline](./adr-0003-contracts-first-documentation.md)
|
|
6
6
|
- [ADR-0004: Dual ESM and CJS Runtime Compatibility](./adr-0004-dual-esm-cjs-runtime-compatibility.md)
|
|
7
|
+
- [ADR-0005: Internal Completion Field Exposure](./adr-0005-internal-completion-field-exposure.md)
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@plasius/ai",
|
|
3
|
-
"version": "1.1.
|
|
3
|
+
"version": "1.1.18",
|
|
4
4
|
"description": "Plasius AI functions providing chatbot, text-to-speech, speech-to-text, and AI-generated images and videos",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"chatbot",
|
|
@@ -39,33 +39,33 @@
|
|
|
39
39
|
"author": "Plasius LTD <development@plasius.co.uk>",
|
|
40
40
|
"license": "MIT",
|
|
41
41
|
"dependencies": {
|
|
42
|
-
"@plasius/entity-manager": "^1.0.
|
|
43
|
-
"@plasius/error": "^1.0.
|
|
44
|
-
"@plasius/profile": "^1.0.
|
|
45
|
-
"@plasius/schema": "^1.2.
|
|
42
|
+
"@plasius/entity-manager": "^1.0.13",
|
|
43
|
+
"@plasius/error": "^1.0.10",
|
|
44
|
+
"@plasius/profile": "^1.0.29",
|
|
45
|
+
"@plasius/schema": "^1.2.7"
|
|
46
46
|
},
|
|
47
47
|
"peerDependencies": {
|
|
48
|
-
"react": "^19
|
|
48
|
+
"react": "^19"
|
|
49
49
|
},
|
|
50
50
|
"devDependencies": {
|
|
51
51
|
"@eslint/js": "^10.0.1",
|
|
52
52
|
"@testing-library/react": "^16.3.0",
|
|
53
|
-
"@types/node": "^
|
|
53
|
+
"@types/node": "^25.5.0",
|
|
54
54
|
"@types/react": "^19.2.14",
|
|
55
55
|
"@types/uuid": "^10.0.0",
|
|
56
|
-
"@typescript-eslint/eslint-plugin": "^8.
|
|
57
|
-
"@typescript-eslint/parser": "^8.
|
|
58
|
-
"@vitest/coverage-v8": "^4.
|
|
59
|
-
"ajv": "^
|
|
60
|
-
"eslint": "^10.0
|
|
56
|
+
"@typescript-eslint/eslint-plugin": "^8.58.0",
|
|
57
|
+
"@typescript-eslint/parser": "^8.58.0",
|
|
58
|
+
"@vitest/coverage-v8": "^4.1.2",
|
|
59
|
+
"ajv": "^8.18.0",
|
|
60
|
+
"eslint": "^10.1.0",
|
|
61
61
|
"globals": "^17.3.0",
|
|
62
|
-
"npm-run-all": "^
|
|
63
|
-
"react": "^19.
|
|
64
|
-
"react-dom": "^19.
|
|
62
|
+
"npm-run-all": "^4.1.5",
|
|
63
|
+
"react": "^19.2.4",
|
|
64
|
+
"react-dom": "^19.2.4",
|
|
65
65
|
"react-router-dom": "^7.13.0",
|
|
66
66
|
"tsx": "^4.21.0",
|
|
67
|
-
"typescript": "^
|
|
68
|
-
"vitest": "^4.
|
|
67
|
+
"typescript": "^6.0.2",
|
|
68
|
+
"vitest": "^4.1.2"
|
|
69
69
|
},
|
|
70
70
|
"sideEffects": [
|
|
71
71
|
"*.css"
|
|
@@ -114,7 +114,7 @@
|
|
|
114
114
|
}
|
|
115
115
|
],
|
|
116
116
|
"engines": {
|
|
117
|
-
"node": ">=
|
|
117
|
+
"node": ">=24"
|
|
118
118
|
},
|
|
119
119
|
"packageManager": "npm@11.4.2",
|
|
120
120
|
"overrides": {
|
package/src/platform/index.ts
CHANGED
|
@@ -26,7 +26,8 @@ export const completionSchema = createSchema(
|
|
|
26
26
|
partitionKey: field
|
|
27
27
|
.string()
|
|
28
28
|
.description("User or system identifier that made the request")
|
|
29
|
-
.version("1.0")
|
|
29
|
+
.version("1.0")
|
|
30
|
+
.internal(),
|
|
30
31
|
usage: field
|
|
31
32
|
.object<Record<string, FieldBuilder<number>>>({} as SchemaShape)
|
|
32
33
|
.description("Optional usage metrics like token count or cost")
|