@envarai/envarpay 0.2.0-alpha.1 → 0.2.0-alpha.11

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.
Files changed (55) hide show
  1. package/README.md +2 -0
  2. package/dist/commerce/alerts.d.ts +37 -0
  3. package/dist/commerce/alerts.js +127 -0
  4. package/dist/commerce/buyer-store.d.ts +8 -0
  5. package/dist/commerce/buyer.d.ts +12 -3
  6. package/dist/commerce/buyer.js +151 -7
  7. package/dist/commerce/card.js +2 -2
  8. package/dist/commerce/cli.js +74 -9
  9. package/dist/commerce/client-runtime.d.ts +1 -1
  10. package/dist/commerce/config.d.ts +5 -1
  11. package/dist/commerce/config.js +37 -1
  12. package/dist/commerce/configure.d.ts +3 -0
  13. package/dist/commerce/configure.js +158 -0
  14. package/dist/commerce/discovery.d.ts +23 -0
  15. package/dist/commerce/discovery.js +162 -0
  16. package/dist/commerce/envar-runtime.d.ts +3 -1
  17. package/dist/commerce/envar-runtime.js +28 -1
  18. package/dist/commerce/envar.d.ts +5 -0
  19. package/dist/commerce/envar.js +13 -0
  20. package/dist/commerce/index.d.ts +1 -0
  21. package/dist/commerce/index.js +1 -0
  22. package/dist/commerce/management.js +3 -1
  23. package/dist/commerce/mpp-client.d.ts +11 -0
  24. package/dist/commerce/mpp-client.js +5 -0
  25. package/dist/commerce/mpp-runtime.d.ts +1 -0
  26. package/dist/commerce/mpp-runtime.js +1 -0
  27. package/dist/commerce/native-skills.d.ts +31 -0
  28. package/dist/commerce/native-skills.js +174 -0
  29. package/dist/commerce/operations.d.ts +22 -0
  30. package/dist/commerce/operations.js +39 -0
  31. package/dist/commerce/peer-proxy.js +11 -5
  32. package/dist/commerce/pricing.js +2 -2
  33. package/dist/commerce/runtime.d.ts +2 -0
  34. package/dist/commerce/runtime.js +2 -0
  35. package/dist/commerce/server.d.ts +4 -1
  36. package/dist/commerce/server.js +40 -9
  37. package/dist/commerce/setup.d.ts +18 -0
  38. package/dist/commerce/setup.js +344 -0
  39. package/dist/commerce/skill-gate.d.ts +54 -0
  40. package/dist/commerce/skill-gate.js +153 -0
  41. package/dist/commerce/store.d.ts +2 -0
  42. package/dist/commerce/store.js +7 -0
  43. package/dist/commerce/stripe-issuer.d.ts +41 -0
  44. package/dist/commerce/stripe-issuer.js +351 -0
  45. package/dist/commerce/stripe-provider.d.ts +2 -0
  46. package/dist/commerce/stripe-provider.js +57 -22
  47. package/dist/commerce/types.d.ts +27 -2
  48. package/dist/commerce/x402.d.ts +1 -0
  49. package/dist/commerce/x402.js +8 -1
  50. package/examples/hermes-setup-probe.py +105 -0
  51. package/examples/hermes-skill-inventory.py +107 -0
  52. package/examples/native-skill-runner.py +197 -0
  53. package/package.json +1 -1
  54. package/schemas/buyer-policy.schema.json +105 -0
  55. package/schemas/envarpay.config.schema.json +22 -15
@@ -70,6 +70,54 @@
70
70
  "maxPerPurchase": {
71
71
  "type": "string",
72
72
  "pattern": "^(0|[1-9][0-9]{0,77})$"
73
+ },
74
+ "mode": {
75
+ "enum": [
76
+ "envarpay",
77
+ "standard-a2a"
78
+ ]
79
+ },
80
+ "endpoint": {
81
+ "type": "string",
82
+ "format": "uri",
83
+ "pattern": "^https://"
84
+ },
85
+ "authentication": {
86
+ "enum": [
87
+ "none",
88
+ "bearer"
89
+ ]
90
+ },
91
+ "localContract": {
92
+ "type": "object",
93
+ "additionalProperties": false,
94
+ "required": [
95
+ "revision",
96
+ "offerId",
97
+ "inputSchema",
98
+ "amount",
99
+ "paidOnly"
100
+ ],
101
+ "properties": {
102
+ "revision": {
103
+ "type": "integer",
104
+ "minimum": 1,
105
+ "maximum": 9007199254740991
106
+ },
107
+ "offerId": {
108
+ "type": "string",
109
+ "pattern": "^[a-z][a-z0-9-]{0,63}$"
110
+ },
111
+ "inputSchema": {
112
+ "type": "object"
113
+ },
114
+ "amount": {
115
+ "$ref": "#/$defs/amount"
116
+ },
117
+ "paidOnly": {
118
+ "const": true
119
+ }
120
+ }
73
121
  }
74
122
  },
75
123
  "allOf": [
@@ -109,6 +157,63 @@
109
157
  }
110
158
  }
111
159
  }
160
+ },
161
+ {
162
+ "if": {
163
+ "required": [
164
+ "mode"
165
+ ],
166
+ "properties": {
167
+ "mode": {
168
+ "const": "standard-a2a"
169
+ }
170
+ }
171
+ },
172
+ "then": {
173
+ "required": [
174
+ "endpoint",
175
+ "authentication",
176
+ "localContract"
177
+ ],
178
+ "properties": {
179
+ "protocol": {
180
+ "const": "x402"
181
+ },
182
+ "endpoint": {},
183
+ "authentication": {},
184
+ "localContract": {}
185
+ }
186
+ },
187
+ "else": {
188
+ "not": {
189
+ "anyOf": [
190
+ {
191
+ "required": [
192
+ "endpoint"
193
+ ],
194
+ "properties": {
195
+ "endpoint": {}
196
+ }
197
+ },
198
+ {
199
+ "required": [
200
+ "authentication"
201
+ ],
202
+ "properties": {
203
+ "authentication": {}
204
+ }
205
+ },
206
+ {
207
+ "required": [
208
+ "localContract"
209
+ ],
210
+ "properties": {
211
+ "localContract": {}
212
+ }
213
+ }
214
+ ]
215
+ }
216
+ }
112
217
  }
113
218
  ]
114
219
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "$schema": "https://json-schema.org/draft/2020-12/schema",
3
- "$id": "urn:envarpay:config:1",
3
+ "$id": "urn:envarpay:config:1-or-2",
4
4
  "title": "EnvarPay A2A commerce MVP configuration",
5
5
  "type": "object",
6
6
  "additionalProperties": false,
@@ -12,7 +12,7 @@
12
12
  ],
13
13
  "properties": {
14
14
  "configVersion": {
15
- "const": 1
15
+ "enum": [1, 2]
16
16
  },
17
17
  "agent": {
18
18
  "type": "object",
@@ -51,7 +51,7 @@
51
51
  },
52
52
  "services": {
53
53
  "type": "array",
54
- "minItems": 1,
54
+ "minItems": 0,
55
55
  "maxItems": 64,
56
56
  "items": {
57
57
  "$ref": "#/$defs/service"
@@ -165,20 +165,27 @@
165
165
  "maximum": 2147483647
166
166
  },
167
167
  "execution": {
168
- "type": "object",
169
- "additionalProperties": false,
170
- "required": [
171
- "type",
172
- "cardUrl"
173
- ],
174
- "properties": {
175
- "type": {
176
- "const": "a2a"
168
+ "oneOf": [
169
+ {
170
+ "type": "object",
171
+ "additionalProperties": false,
172
+ "required": ["type", "cardUrl"],
173
+ "properties": {
174
+ "type": { "const": "a2a" },
175
+ "cardUrl": { "$ref": "#/$defs/httpUrl" }
176
+ }
177
177
  },
178
- "cardUrl": {
179
- "$ref": "#/$defs/httpUrl"
178
+ {
179
+ "type": "object",
180
+ "additionalProperties": false,
181
+ "required": ["type", "cardUrl", "skillDigest"],
182
+ "properties": {
183
+ "type": { "const": "skill" },
184
+ "cardUrl": { "$ref": "#/$defs/httpUrl" },
185
+ "skillDigest": { "type": "string", "pattern": "^[0-9a-f]{64}$" }
186
+ }
180
187
  }
181
- }
188
+ ]
182
189
  },
183
190
  "contract": {
184
191
  "type": "object",