@dxos/functions 0.7.5-main.5ae2ba8 → 0.7.5-main.6ab6199

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-XLM3CJXO.mjs → chunk-TMUL6AZC.mjs} +2 -2
  2. package/dist/lib/browser/{chunk-IXJNRWJP.mjs → chunk-XK3NINVF.mjs} +32 -10
  3. package/dist/lib/browser/{chunk-IXJNRWJP.mjs.map → chunk-XK3NINVF.mjs.map} +3 -3
  4. package/dist/lib/browser/index.mjs +15 -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 +11 -1
  9. package/dist/lib/node/{chunk-MGCKR53Q.cjs → chunk-3J6FVYUV.cjs} +39 -12
  10. package/dist/lib/node/{chunk-MGCKR53Q.cjs.map → chunk-3J6FVYUV.cjs.map} +3 -3
  11. package/dist/lib/node/{chunk-TLSUCABH.cjs → chunk-BGDVH6JU.cjs} +15 -15
  12. package/dist/lib/node/index.cjs +28 -18
  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 +20 -10
  17. package/dist/lib/node/types/index.cjs.map +2 -2
  18. package/dist/lib/node-esm/{chunk-FCZGNRNF.mjs → chunk-QRMVAODA.mjs} +32 -10
  19. package/dist/lib/node-esm/{chunk-FCZGNRNF.mjs.map → chunk-QRMVAODA.mjs.map} +3 -3
  20. package/dist/lib/node-esm/{chunk-CKTHJQ7M.mjs → chunk-V3VOPFP3.mjs} +2 -2
  21. package/dist/lib/node-esm/index.mjs +15 -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 +11 -1
  26. package/dist/types/src/handler.d.ts +2 -1
  27. package/dist/types/src/handler.d.ts.map +1 -1
  28. package/dist/types/src/types/trace.d.ts +43 -6
  29. package/dist/types/src/types/trace.d.ts.map +1 -1
  30. package/package.json +18 -18
  31. package/src/handler.ts +2 -1
  32. package/src/types/trace.ts +28 -11
  33. /package/dist/lib/browser/{chunk-XLM3CJXO.mjs.map → chunk-TMUL6AZC.mjs.map} +0 -0
  34. /package/dist/lib/node/{chunk-TLSUCABH.cjs.map → chunk-BGDVH6JU.cjs.map} +0 -0
  35. /package/dist/lib/node-esm/{chunk-CKTHJQ7M.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.7.5-main.5ae2ba8",
3
+ "version": "0.7.5-main.6ab6199",
4
4
  "description": "Functions API and runtime.",
5
5
  "homepage": "https://dxos.org",
6
6
  "bugs": "https://github.com/dxos/dxos/issues",
@@ -67,27 +67,27 @@
67
67
  "get-port-please": "^3.1.1",
68
68
  "iso-did": "^1.6.0",
69
69
  "ws": "^8.14.2",
70
- "@dxos/async": "0.7.5-main.5ae2ba8",
71
- "@dxos/client": "0.7.5-main.5ae2ba8",
72
- "@dxos/context": "0.7.5-main.5ae2ba8",
73
- "@dxos/crypto": "0.7.5-main.5ae2ba8",
74
- "@dxos/echo-db": "0.7.5-main.5ae2ba8",
75
- "@dxos/echo-protocol": "0.7.5-main.5ae2ba8",
76
- "@dxos/edge-client": "0.7.5-main.5ae2ba8",
77
- "@dxos/invariant": "0.7.5-main.5ae2ba8",
78
- "@dxos/keys": "0.7.5-main.5ae2ba8",
79
- "@dxos/live-object": "0.7.5-main.5ae2ba8",
80
- "@dxos/echo-schema": "0.7.5-main.5ae2ba8",
81
- "@dxos/log": "0.7.5-main.5ae2ba8",
82
- "@dxos/node-std": "0.7.5-main.5ae2ba8",
83
- "@dxos/protocols": "0.7.5-main.5ae2ba8",
84
- "@dxos/util": "0.7.5-main.5ae2ba8",
85
- "@dxos/schema": "0.7.5-main.5ae2ba8"
70
+ "@dxos/async": "0.7.5-main.6ab6199",
71
+ "@dxos/context": "0.7.5-main.6ab6199",
72
+ "@dxos/client": "0.7.5-main.6ab6199",
73
+ "@dxos/crypto": "0.7.5-main.6ab6199",
74
+ "@dxos/echo-db": "0.7.5-main.6ab6199",
75
+ "@dxos/echo-schema": "0.7.5-main.6ab6199",
76
+ "@dxos/echo-protocol": "0.7.5-main.6ab6199",
77
+ "@dxos/edge-client": "0.7.5-main.6ab6199",
78
+ "@dxos/invariant": "0.7.5-main.6ab6199",
79
+ "@dxos/keys": "0.7.5-main.6ab6199",
80
+ "@dxos/live-object": "0.7.5-main.6ab6199",
81
+ "@dxos/log": "0.7.5-main.6ab6199",
82
+ "@dxos/node-std": "0.7.5-main.6ab6199",
83
+ "@dxos/protocols": "0.7.5-main.6ab6199",
84
+ "@dxos/schema": "0.7.5-main.6ab6199",
85
+ "@dxos/util": "0.7.5-main.6ab6199"
86
86
  },
87
87
  "devDependencies": {
88
88
  "@types/express": "^4.17.17",
89
89
  "@types/ws": "^7.4.0",
90
- "@dxos/agent": "0.7.5-main.5ae2ba8"
90
+ "@dxos/agent": "0.7.5-main.6ab6199"
91
91
  },
92
92
  "publishConfig": {
93
93
  "access": "public"
package/src/handler.ts CHANGED
@@ -7,10 +7,11 @@ import { type Effect } from 'effect';
7
7
 
8
8
  import { type Client, PublicKey } from '@dxos/client';
9
9
  import { type Space, type SpaceId } from '@dxos/client/echo';
10
- import type { CoreDatabase, EchoDatabase, QueryResult, ReactiveEchoObject } from '@dxos/echo-db';
10
+ import type { CoreDatabase, EchoDatabase, ReactiveEchoObject } from '@dxos/echo-db';
11
11
  import { type HasId } from '@dxos/echo-schema';
12
12
  import { type DXN } from '@dxos/keys';
13
13
  import { log } from '@dxos/log';
14
+ import { type QueryResult } from '@dxos/protocols';
14
15
  import { isNonNullable } from '@dxos/util';
15
16
 
16
17
  // TODO(burdon): Model after http request. Ref Lambda/OpenFaaS.
@@ -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
- 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,28 +36,29 @@ 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
- const TraceEventLog = S.Struct({
47
+ export const TraceEventLog = S.Struct({
28
48
  timestampMs: S.Number,
29
49
  level: S.String,
30
50
  message: S.String,
31
51
  context: S.optional(S.Object),
32
52
  });
33
53
 
34
- 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
- const TraceEvent = S.Struct({
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'));