@mhome/artifact-protocol 1.4.0 → 1.5.1
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
CHANGED
|
@@ -18,4 +18,4 @@ runtime concerns and are deliberately not encoded into an artifact reference.
|
|
|
18
18
|
|
|
19
19
|
Capability media values (`Image`, `Audio`) use `MediaReference`: exactly `{ "uri": "meow-artifact://v1/..." }`. The reference has no URL, inline bytes, MIME or creation timestamp fields. Parse and check kind and tenant/scope at capability boundaries; do not implicitly import media. Upload bytes with `PutArtifactRequest` or explicitly download finite HTTP(S) content with `ImportArtifactRequest` via `/app/artifact/put` and `/app/artifact/import`. Storage metadata and upload transports retain their MIME and byte fields. Resolve to temporary delivery URLs only at consumers. Conversation media sources retain their existing tagged artifact protocol. Video storage remains unsupported by the runtimes.
|
|
20
20
|
|
|
21
|
-
|
|
21
|
+
Upload/import preserves bytes. Callers perform conversion before upload. Public ingress is limited to 1 MiB; internal producers retain their own limits. The shared reference and storage contracts do not impose the public ingress limit.
|
package/package.json
CHANGED
package/protocol.json
CHANGED
|
@@ -25,83 +25,6 @@
|
|
|
25
25
|
"type": "string",
|
|
26
26
|
"minLength": 3,
|
|
27
27
|
"maxLength": 255
|
|
28
|
-
},
|
|
29
|
-
"transform": {
|
|
30
|
-
"type": "object",
|
|
31
|
-
"additionalProperties": false,
|
|
32
|
-
"required": [
|
|
33
|
-
"format"
|
|
34
|
-
],
|
|
35
|
-
"properties": {
|
|
36
|
-
"format": {
|
|
37
|
-
"enum": [
|
|
38
|
-
"JPEG",
|
|
39
|
-
"PNG"
|
|
40
|
-
]
|
|
41
|
-
},
|
|
42
|
-
"maxWidth": {
|
|
43
|
-
"type": "integer",
|
|
44
|
-
"minimum": 1,
|
|
45
|
-
"maximum": 16384
|
|
46
|
-
},
|
|
47
|
-
"maxHeight": {
|
|
48
|
-
"type": "integer",
|
|
49
|
-
"minimum": 1,
|
|
50
|
-
"maximum": 16384
|
|
51
|
-
},
|
|
52
|
-
"quality": {
|
|
53
|
-
"type": "integer",
|
|
54
|
-
"minimum": 1,
|
|
55
|
-
"maximum": 100
|
|
56
|
-
},
|
|
57
|
-
"background": {
|
|
58
|
-
"type": "string",
|
|
59
|
-
"pattern": "^#[0-9A-Fa-f]{6}$"
|
|
60
|
-
}
|
|
61
|
-
},
|
|
62
|
-
"allOf": [
|
|
63
|
-
{
|
|
64
|
-
"if": {
|
|
65
|
-
"properties": {
|
|
66
|
-
"format": {
|
|
67
|
-
"const": "PNG"
|
|
68
|
-
}
|
|
69
|
-
}
|
|
70
|
-
},
|
|
71
|
-
"then": {
|
|
72
|
-
"not": {
|
|
73
|
-
"anyOf": [
|
|
74
|
-
{
|
|
75
|
-
"required": [
|
|
76
|
-
"quality"
|
|
77
|
-
]
|
|
78
|
-
},
|
|
79
|
-
{
|
|
80
|
-
"required": [
|
|
81
|
-
"background"
|
|
82
|
-
]
|
|
83
|
-
}
|
|
84
|
-
]
|
|
85
|
-
}
|
|
86
|
-
}
|
|
87
|
-
}
|
|
88
|
-
]
|
|
89
|
-
}
|
|
90
|
-
},
|
|
91
|
-
"allOf": [
|
|
92
|
-
{
|
|
93
|
-
"if": {
|
|
94
|
-
"required": [
|
|
95
|
-
"transform"
|
|
96
|
-
]
|
|
97
|
-
},
|
|
98
|
-
"then": {
|
|
99
|
-
"properties": {
|
|
100
|
-
"kind": {
|
|
101
|
-
"const": "IMAGE"
|
|
102
|
-
}
|
|
103
|
-
}
|
|
104
|
-
}
|
|
105
28
|
}
|
|
106
|
-
|
|
29
|
+
}
|
|
107
30
|
}
|
|
@@ -93,85 +93,8 @@
|
|
|
93
93
|
"type": "integer",
|
|
94
94
|
"minimum": 1,
|
|
95
95
|
"maximum": 9007199254740991
|
|
96
|
-
},
|
|
97
|
-
"transform": {
|
|
98
|
-
"type": "object",
|
|
99
|
-
"additionalProperties": false,
|
|
100
|
-
"required": [
|
|
101
|
-
"format"
|
|
102
|
-
],
|
|
103
|
-
"properties": {
|
|
104
|
-
"format": {
|
|
105
|
-
"enum": [
|
|
106
|
-
"JPEG",
|
|
107
|
-
"PNG"
|
|
108
|
-
]
|
|
109
|
-
},
|
|
110
|
-
"maxWidth": {
|
|
111
|
-
"type": "integer",
|
|
112
|
-
"minimum": 1,
|
|
113
|
-
"maximum": 16384
|
|
114
|
-
},
|
|
115
|
-
"maxHeight": {
|
|
116
|
-
"type": "integer",
|
|
117
|
-
"minimum": 1,
|
|
118
|
-
"maximum": 16384
|
|
119
|
-
},
|
|
120
|
-
"quality": {
|
|
121
|
-
"type": "integer",
|
|
122
|
-
"minimum": 1,
|
|
123
|
-
"maximum": 100
|
|
124
|
-
},
|
|
125
|
-
"background": {
|
|
126
|
-
"type": "string",
|
|
127
|
-
"pattern": "^#[0-9A-Fa-f]{6}$"
|
|
128
|
-
}
|
|
129
|
-
},
|
|
130
|
-
"allOf": [
|
|
131
|
-
{
|
|
132
|
-
"if": {
|
|
133
|
-
"properties": {
|
|
134
|
-
"format": {
|
|
135
|
-
"const": "PNG"
|
|
136
|
-
}
|
|
137
|
-
}
|
|
138
|
-
},
|
|
139
|
-
"then": {
|
|
140
|
-
"not": {
|
|
141
|
-
"anyOf": [
|
|
142
|
-
{
|
|
143
|
-
"required": [
|
|
144
|
-
"quality"
|
|
145
|
-
]
|
|
146
|
-
},
|
|
147
|
-
{
|
|
148
|
-
"required": [
|
|
149
|
-
"background"
|
|
150
|
-
]
|
|
151
|
-
}
|
|
152
|
-
]
|
|
153
|
-
}
|
|
154
|
-
}
|
|
155
|
-
}
|
|
156
|
-
]
|
|
157
96
|
}
|
|
158
|
-
}
|
|
159
|
-
"allOf": [
|
|
160
|
-
{
|
|
161
|
-
"if": {
|
|
162
|
-
"required": [
|
|
163
|
-
"transform"
|
|
164
|
-
]
|
|
165
|
-
},
|
|
166
|
-
"then": {
|
|
167
|
-
"properties": {
|
|
168
|
-
"kind": {
|
|
169
|
-
"const": "IMAGE"
|
|
170
|
-
}
|
|
171
|
-
}
|
|
172
|
-
}
|
|
173
|
-
}
|
|
174
|
-
]
|
|
97
|
+
}
|
|
175
98
|
},
|
|
176
99
|
"response": {
|
|
177
100
|
"$ref": "#/$defs/metadata"
|
|
@@ -47,85 +47,8 @@
|
|
|
47
47
|
"type": "integer",
|
|
48
48
|
"minimum": 1,
|
|
49
49
|
"maximum": 9007199254740991
|
|
50
|
-
},
|
|
51
|
-
"transform": {
|
|
52
|
-
"type": "object",
|
|
53
|
-
"additionalProperties": false,
|
|
54
|
-
"required": [
|
|
55
|
-
"format"
|
|
56
|
-
],
|
|
57
|
-
"properties": {
|
|
58
|
-
"format": {
|
|
59
|
-
"enum": [
|
|
60
|
-
"JPEG",
|
|
61
|
-
"PNG"
|
|
62
|
-
]
|
|
63
|
-
},
|
|
64
|
-
"maxWidth": {
|
|
65
|
-
"type": "integer",
|
|
66
|
-
"minimum": 1,
|
|
67
|
-
"maximum": 16384
|
|
68
|
-
},
|
|
69
|
-
"maxHeight": {
|
|
70
|
-
"type": "integer",
|
|
71
|
-
"minimum": 1,
|
|
72
|
-
"maximum": 16384
|
|
73
|
-
},
|
|
74
|
-
"quality": {
|
|
75
|
-
"type": "integer",
|
|
76
|
-
"minimum": 1,
|
|
77
|
-
"maximum": 100
|
|
78
|
-
},
|
|
79
|
-
"background": {
|
|
80
|
-
"type": "string",
|
|
81
|
-
"pattern": "^#[0-9A-Fa-f]{6}$"
|
|
82
|
-
}
|
|
83
|
-
},
|
|
84
|
-
"allOf": [
|
|
85
|
-
{
|
|
86
|
-
"if": {
|
|
87
|
-
"properties": {
|
|
88
|
-
"format": {
|
|
89
|
-
"const": "PNG"
|
|
90
|
-
}
|
|
91
|
-
}
|
|
92
|
-
},
|
|
93
|
-
"then": {
|
|
94
|
-
"not": {
|
|
95
|
-
"anyOf": [
|
|
96
|
-
{
|
|
97
|
-
"required": [
|
|
98
|
-
"quality"
|
|
99
|
-
]
|
|
100
|
-
},
|
|
101
|
-
{
|
|
102
|
-
"required": [
|
|
103
|
-
"background"
|
|
104
|
-
]
|
|
105
|
-
}
|
|
106
|
-
]
|
|
107
|
-
}
|
|
108
|
-
}
|
|
109
|
-
}
|
|
110
|
-
]
|
|
111
50
|
}
|
|
112
|
-
}
|
|
113
|
-
"allOf": [
|
|
114
|
-
{
|
|
115
|
-
"if": {
|
|
116
|
-
"required": [
|
|
117
|
-
"transform"
|
|
118
|
-
]
|
|
119
|
-
},
|
|
120
|
-
"then": {
|
|
121
|
-
"properties": {
|
|
122
|
-
"kind": {
|
|
123
|
-
"const": "IMAGE"
|
|
124
|
-
}
|
|
125
|
-
}
|
|
126
|
-
}
|
|
127
|
-
}
|
|
128
|
-
]
|
|
51
|
+
}
|
|
129
52
|
},
|
|
130
53
|
"response": {
|
|
131
54
|
"type": "object",
|