@dxos/functions 0.8.0 → 0.8.1-main.303c73a

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 (35) hide show
  1. package/dist/lib/browser/{chunk-WI2RVE6E.mjs → chunk-TMUL6AZC.mjs} +2 -2
  2. package/dist/lib/browser/{chunk-6XYG2TNO.mjs → chunk-XK3NINVF.mjs} +29 -11
  3. package/dist/lib/{node-esm/chunk-A3BWJQVO.mjs.map → browser/chunk-XK3NINVF.mjs.map} +3 -3
  4. package/dist/lib/browser/index.mjs +7 -5
  5. package/dist/lib/browser/index.mjs.map +2 -2
  6. package/dist/lib/browser/meta.json +1 -1
  7. package/dist/lib/browser/testing/index.mjs +2 -2
  8. package/dist/lib/browser/types/index.mjs +5 -3
  9. package/dist/lib/node/{chunk-UNB65EWP.cjs → chunk-3J6FVYUV.cjs} +33 -14
  10. package/dist/lib/node/{chunk-UNB65EWP.cjs.map → chunk-3J6FVYUV.cjs.map} +3 -3
  11. package/dist/lib/node/{chunk-HH4ZO3YY.cjs → chunk-BGDVH6JU.cjs} +15 -15
  12. package/dist/lib/node/index.cjs +25 -23
  13. package/dist/lib/node/index.cjs.map +2 -2
  14. package/dist/lib/node/meta.json +1 -1
  15. package/dist/lib/node/testing/index.cjs +7 -7
  16. package/dist/lib/node/types/index.cjs +17 -15
  17. package/dist/lib/node/types/index.cjs.map +2 -2
  18. package/dist/lib/node-esm/{chunk-A3BWJQVO.mjs → chunk-QRMVAODA.mjs} +29 -11
  19. package/dist/lib/{browser/chunk-6XYG2TNO.mjs.map → node-esm/chunk-QRMVAODA.mjs.map} +3 -3
  20. package/dist/lib/node-esm/{chunk-CM2LOG4A.mjs → chunk-V3VOPFP3.mjs} +2 -2
  21. package/dist/lib/node-esm/index.mjs +7 -5
  22. package/dist/lib/node-esm/index.mjs.map +2 -2
  23. package/dist/lib/node-esm/meta.json +1 -1
  24. package/dist/lib/node-esm/testing/index.mjs +2 -2
  25. package/dist/lib/node-esm/types/index.mjs +5 -3
  26. package/dist/types/src/handler.d.ts +1 -1
  27. package/dist/types/src/handler.d.ts.map +1 -1
  28. package/dist/types/src/types/trace.d.ts +36 -10
  29. package/dist/types/src/types/trace.d.ts.map +1 -1
  30. package/package.json +19 -20
  31. package/src/handler.ts +1 -1
  32. package/src/types/trace.ts +26 -9
  33. /package/dist/lib/browser/{chunk-WI2RVE6E.mjs.map → chunk-TMUL6AZC.mjs.map} +0 -0
  34. /package/dist/lib/node/{chunk-HH4ZO3YY.cjs.map → chunk-BGDVH6JU.cjs.map} +0 -0
  35. /package/dist/lib/node-esm/{chunk-CM2LOG4A.mjs.map → chunk-V3VOPFP3.mjs.map} +0 -0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dxos/functions",
3
- "version": "0.8.0",
3
+ "version": "0.8.1-main.303c73a",
4
4
  "description": "Functions API and runtime.",
5
5
  "homepage": "https://dxos.org",
6
6
  "bugs": "https://github.com/dxos/dxos/issues",
@@ -58,36 +58,35 @@
58
58
  "src"
59
59
  ],
60
60
  "dependencies": {
61
- "@effect/schema": "^0.75.5",
62
61
  "@preact/signals-core": "^1.6.0",
63
62
  "cron": "^3.1.6",
64
- "effect": "^3.12.3",
63
+ "effect": "3.12.12",
65
64
  "esbuild-wasm": "^0.16.14",
66
65
  "express": "^4.19.2",
67
66
  "get-port-please": "^3.1.1",
68
67
  "iso-did": "^1.6.0",
69
68
  "ws": "^8.14.2",
70
- "@dxos/async": "0.8.0",
71
- "@dxos/client": "0.8.0",
72
- "@dxos/context": "0.8.0",
73
- "@dxos/crypto": "0.8.0",
74
- "@dxos/echo-db": "0.8.0",
75
- "@dxos/echo-protocol": "0.8.0",
76
- "@dxos/echo-schema": "0.8.0",
77
- "@dxos/edge-client": "0.8.0",
78
- "@dxos/invariant": "0.8.0",
79
- "@dxos/keys": "0.8.0",
80
- "@dxos/node-std": "0.8.0",
81
- "@dxos/live-object": "0.8.0",
82
- "@dxos/log": "0.8.0",
83
- "@dxos/protocols": "0.8.0",
84
- "@dxos/schema": "0.8.0",
85
- "@dxos/util": "0.8.0"
69
+ "@dxos/async": "0.8.1-main.303c73a",
70
+ "@dxos/client": "0.8.1-main.303c73a",
71
+ "@dxos/crypto": "0.8.1-main.303c73a",
72
+ "@dxos/echo-db": "0.8.1-main.303c73a",
73
+ "@dxos/context": "0.8.1-main.303c73a",
74
+ "@dxos/echo-protocol": "0.8.1-main.303c73a",
75
+ "@dxos/edge-client": "0.8.1-main.303c73a",
76
+ "@dxos/invariant": "0.8.1-main.303c73a",
77
+ "@dxos/keys": "0.8.1-main.303c73a",
78
+ "@dxos/echo-schema": "0.8.1-main.303c73a",
79
+ "@dxos/log": "0.8.1-main.303c73a",
80
+ "@dxos/live-object": "0.8.1-main.303c73a",
81
+ "@dxos/protocols": "0.8.1-main.303c73a",
82
+ "@dxos/node-std": "0.8.1-main.303c73a",
83
+ "@dxos/schema": "0.8.1-main.303c73a",
84
+ "@dxos/util": "0.8.1-main.303c73a"
86
85
  },
87
86
  "devDependencies": {
88
87
  "@types/express": "^4.17.17",
89
88
  "@types/ws": "^7.4.0",
90
- "@dxos/agent": "0.8.0"
89
+ "@dxos/agent": "0.8.1-main.303c73a"
91
90
  },
92
91
  "publishConfig": {
93
92
  "access": "public"
package/src/handler.ts CHANGED
@@ -2,7 +2,7 @@
2
2
  // Copyright 2023 DXOS.org
3
3
  //
4
4
 
5
- import { Schema as S } from '@effect/schema';
5
+ import { Schema as S } from 'effect';
6
6
  import { type Effect } from 'effect';
7
7
 
8
8
  import { type Client, PublicKey } from '@dxos/client';
@@ -6,8 +6,24 @@ import { EchoObject, Expando, ObjectId, Ref, S } from '@dxos/echo-schema';
6
6
 
7
7
  import { FunctionTrigger } from './types';
8
8
 
9
- export const InvocationTrace = S.Struct({
9
+ export enum InvocationOutcome {
10
+ SUCCESS = 'success',
11
+ FAILURE = 'failure',
12
+ }
13
+
14
+ export const TraceEventException = S.Struct({
15
+ timestampMs: S.Number,
16
+ message: S.String,
17
+ name: S.String,
18
+ stack: S.optional(S.String),
19
+ });
20
+
21
+ export const InvocationTraceEvent = S.Struct({
10
22
  id: ObjectId,
23
+ timestampMs: S.Number,
24
+ outcome: S.Enums(InvocationOutcome),
25
+ input: S.Object,
26
+ durationMs: S.Number,
11
27
  /**
12
28
  * Queue DXN for function/workflow invocation events.
13
29
  */
@@ -20,9 +36,13 @@ export const InvocationTrace = S.Struct({
20
36
  * Present for automatic invocations.
21
37
  */
22
38
  trigger: S.optional(Ref(FunctionTrigger)),
39
+ /**
40
+ * Present for outcome FAILURE.
41
+ */
42
+ exception: S.optional(TraceEventException),
23
43
  }).pipe(EchoObject('dxos.org/type/InvocationTrace', '0.1.0'));
24
44
 
25
- export type InvocationTraceEvent = S.Schema.Type<typeof InvocationTrace>;
45
+ export type InvocationTraceEvent = S.Schema.Type<typeof InvocationTraceEvent>;
26
46
 
27
47
  export const TraceEventLog = S.Struct({
28
48
  timestampMs: S.Number,
@@ -31,17 +51,14 @@ export const TraceEventLog = S.Struct({
31
51
  context: S.optional(S.Object),
32
52
  });
33
53
 
34
- export const TraceEventException = S.Struct({
35
- timestampMs: S.Number,
36
- message: S.String,
37
- name: S.String,
38
- stack: S.optional(S.String),
39
- });
40
-
41
54
  export const TraceEvent = S.Struct({
42
55
  id: ObjectId,
43
56
  outcome: S.String,
44
57
  truncated: S.Boolean,
58
+ /**
59
+ * Time when the event was persisted.
60
+ */
61
+ ingestionTimestampMs: S.Number,
45
62
  logs: S.Array(TraceEventLog),
46
63
  exceptions: S.Array(TraceEventException),
47
64
  }).pipe(EchoObject('dxos.org/type/TraceEvent', '0.1.0'));