@reventlessdev/reventless-infra 3.0.0-alpha.194 → 3.0.0-alpha.195
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
CHANGED
|
@@ -3,6 +3,18 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
# 3.0.0-alpha.195 (2026-10-16)
|
|
7
|
+
|
|
8
|
+
* feat!(inbound): a translation slice can declare a signed webhook URL ([0ad6994](https://github.com/ReventlessDev/reventless-core/commit/0ad69949fcc91c2756c60ca8cb120dd468841d8b))
|
|
9
|
+
|
|
10
|
+
### BREAKING CHANGES
|
|
11
|
+
|
|
12
|
+
* InboundTranslationSlice.Spec requires `endpoint`. Specs under
|
|
13
|
+
@@reventless.spec get it from the PPX (republish reventless-ppx with this
|
|
14
|
+
release); hand-written specs add `let endpoint = None`.
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
|
|
6
18
|
# 3.0.0-alpha.194 (2026-10-16)
|
|
7
19
|
|
|
8
20
|
**Note:** Version bump only for package @reventlessdev/reventless-infra
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@reventlessdev/reventless-infra",
|
|
3
|
-
"version": "3.0.0-alpha.
|
|
3
|
+
"version": "3.0.0-alpha.195",
|
|
4
4
|
"description": "Infrastructure types for Reventless framework",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"jest": {
|
|
@@ -17,9 +17,9 @@
|
|
|
17
17
|
"sury-ppx": "11.0.0",
|
|
18
18
|
"uuid": "^13.0.0",
|
|
19
19
|
"@reventlessdev/rescript-effect": "1.0.0-alpha.0",
|
|
20
|
-
"@reventlessdev/rescript-pulumi-pulumi": "2.3.0-alpha.23",
|
|
21
20
|
"@reventlessdev/rescript-uuid": "2.0.0-alpha.1",
|
|
22
|
-
"@reventlessdev/
|
|
21
|
+
"@reventlessdev/rescript-pulumi-pulumi": "3.0.0-alpha.0",
|
|
22
|
+
"@reventlessdev/reventless-spec": "3.0.0-alpha.167"
|
|
23
23
|
},
|
|
24
24
|
"devDependencies": {
|
|
25
25
|
"rescript": "12.3.1",
|
|
@@ -29,7 +29,8 @@ authorization check, by command encoding or by the publish itself.
|
|
|
29
29
|
|
|
30
30
|
- `requestId` -- the key the audit row is stored under
|
|
31
31
|
- `error` -- the rejection message
|
|
32
|
-
- `errorCode` -- `"Forbidden"` for a refused caller
|
|
32
|
+
- `errorCode` -- `"Forbidden"` for a refused caller, `"PublishFailed"` when the
|
|
33
|
+
commands could not be published (worth retrying); absent for a failed translation
|
|
33
34
|
*/
|
|
34
35
|
type rejectedResult = {
|
|
35
36
|
requestId: string,
|
|
@@ -44,14 +45,24 @@ response with the slice's audit row, and so the GraphQL resolver can report a
|
|
|
44
45
|
*/
|
|
45
46
|
type receiveResult = result<acceptedResult, rejectedResult>
|
|
46
47
|
|
|
48
|
+
/** Which door an input arrived through, recorded on its audit row. */
|
|
49
|
+
@schema
|
|
50
|
+
type door =
|
|
51
|
+
| Mutation
|
|
52
|
+
| Webhook
|
|
53
|
+
|
|
47
54
|
/**
|
|
48
55
|
Runtime operations exposed by an `InboundTranslationSlice` component.
|
|
49
56
|
|
|
50
57
|
- `receive` -- accept external input, translate it, and publish its commands.
|
|
51
|
-
`caller` is who sent it; absent means the platform itself.
|
|
58
|
+
`caller` is who sent it; absent means the platform itself. `door` defaults to
|
|
59
|
+
`Mutation`.
|
|
60
|
+
- `refuse` -- record a webhook request refused before it could be read (a bad
|
|
61
|
+
signature, a body that is not JSON) and answer it as rejected.
|
|
52
62
|
*/
|
|
53
63
|
type operations = {
|
|
54
|
-
receive: (JSON.t, ~caller: Reventless.Identity.t=?) => promise<receiveResult>,
|
|
64
|
+
receive: (JSON.t, ~caller: Reventless.Identity.t=?, ~door: door=?) => promise<receiveResult>,
|
|
65
|
+
refuse: (~body: string, ~errorCode: string, string) => promise<receiveResult>,
|
|
55
66
|
}
|
|
56
67
|
|
|
57
68
|
/**
|
|
@@ -1,2 +1,13 @@
|
|
|
1
1
|
// Generated by ReScript, PLEASE EDIT WITH CARE
|
|
2
|
-
|
|
2
|
+
|
|
3
|
+
import * as Sury from "sury";
|
|
4
|
+
|
|
5
|
+
let doorSchema = Sury.union([
|
|
6
|
+
Sury.literal("Mutation"),
|
|
7
|
+
Sury.literal("Webhook")
|
|
8
|
+
]);
|
|
9
|
+
|
|
10
|
+
export {
|
|
11
|
+
doorSchema,
|
|
12
|
+
}
|
|
13
|
+
/* doorSchema Not a pure module */
|