@dxos/protocols 0.8.4-main.fbb7a13 → 0.8.4-main.fcfe5033a5

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 (239) hide show
  1. package/README.md +1 -1
  2. package/dist/src/FeedProtocol.d.ts +528 -0
  3. package/dist/src/FeedProtocol.d.ts.map +1 -0
  4. package/dist/src/FeedProtocol.js +237 -0
  5. package/dist/src/FeedProtocol.js.map +1 -0
  6. package/dist/src/FunctionProtocol.d.ts +2 -2
  7. package/dist/src/FunctionProtocol.d.ts.map +1 -1
  8. package/dist/src/buf/proto/gen/dxos/client/queue_pb.d.ts +42 -0
  9. package/dist/src/buf/proto/gen/dxos/client/queue_pb.d.ts.map +1 -1
  10. package/dist/src/buf/proto/gen/dxos/client/queue_pb.js +7 -2
  11. package/dist/src/buf/proto/gen/dxos/client/queue_pb.js.map +1 -1
  12. package/dist/src/buf/proto/gen/dxos/client/services_pb.d.ts +64 -3
  13. package/dist/src/buf/proto/gen/dxos/client/services_pb.d.ts.map +1 -1
  14. package/dist/src/buf/proto/gen/dxos/client/services_pb.js +68 -37
  15. package/dist/src/buf/proto/gen/dxos/client/services_pb.js.map +1 -1
  16. package/dist/src/buf/proto/gen/dxos/config_pb.d.ts +104 -2
  17. package/dist/src/buf/proto/gen/dxos/config_pb.d.ts.map +1 -1
  18. package/dist/src/buf/proto/gen/dxos/config_pb.js +72 -1
  19. package/dist/src/buf/proto/gen/dxos/config_pb.js.map +1 -1
  20. package/dist/src/buf/proto/gen/dxos/echo/metadata_pb.d.ts +6 -0
  21. package/dist/src/buf/proto/gen/dxos/echo/metadata_pb.d.ts.map +1 -1
  22. package/dist/src/buf/proto/gen/dxos/echo/metadata_pb.js +1 -1
  23. package/dist/src/buf/proto/gen/dxos/echo/metadata_pb.js.map +1 -1
  24. package/dist/src/buf/proto/gen/dxos/edge/messenger_pb.d.ts +28 -0
  25. package/dist/src/buf/proto/gen/dxos/edge/messenger_pb.d.ts.map +1 -1
  26. package/dist/src/buf/proto/gen/dxos/edge/messenger_pb.js +10 -5
  27. package/dist/src/buf/proto/gen/dxos/edge/messenger_pb.js.map +1 -1
  28. package/dist/src/buf/proto/gen/dxos/google_pb.js +1 -1
  29. package/dist/src/buf/proto/gen/dxos/halo/credentials_pb.d.ts +39 -0
  30. package/dist/src/buf/proto/gen/dxos/halo/credentials_pb.d.ts.map +1 -1
  31. package/dist/src/buf/proto/gen/dxos/halo/credentials_pb.js +27 -2
  32. package/dist/src/buf/proto/gen/dxos/halo/credentials_pb.js.map +1 -1
  33. package/dist/src/buf/proto/gen/dxos/iframe_pb.d.ts +0 -10
  34. package/dist/src/buf/proto/gen/dxos/iframe_pb.d.ts.map +1 -1
  35. package/dist/src/buf/proto/gen/dxos/iframe_pb.js +1 -1
  36. package/dist/src/buf/proto/gen/dxos/iframe_pb.js.map +1 -1
  37. package/dist/src/buf/proto/gen/dxos/rpc_pb.d.ts +24 -0
  38. package/dist/src/buf/proto/gen/dxos/rpc_pb.d.ts.map +1 -1
  39. package/dist/src/buf/proto/gen/dxos/rpc_pb.js +12 -7
  40. package/dist/src/buf/proto/gen/dxos/rpc_pb.js.map +1 -1
  41. package/dist/src/buf/proto/gen/dxos/tracing_pb.d.ts +1 -139
  42. package/dist/src/buf/proto/gen/dxos/tracing_pb.d.ts.map +1 -1
  43. package/dist/src/buf/proto/gen/dxos/tracing_pb.js +11 -45
  44. package/dist/src/buf/proto/gen/dxos/tracing_pb.js.map +1 -1
  45. package/dist/src/codec.test.js +1 -1
  46. package/dist/src/edge/EdgeFunctionEnv.d.ts +12 -24
  47. package/dist/src/edge/EdgeFunctionEnv.d.ts.map +1 -1
  48. package/dist/src/edge/edge.d.ts +165 -0
  49. package/dist/src/edge/edge.d.ts.map +1 -1
  50. package/dist/src/edge/edge.js +13 -0
  51. package/dist/src/edge/edge.js.map +1 -1
  52. package/dist/src/edge/errors.d.ts +1 -1
  53. package/dist/src/edge/errors.js +1 -1
  54. package/dist/src/edge/index.d.ts +4 -3
  55. package/dist/src/edge/index.d.ts.map +1 -1
  56. package/dist/src/edge/index.js +4 -3
  57. package/dist/src/edge/index.js.map +1 -1
  58. package/dist/src/edge/registry.d.ts +127 -0
  59. package/dist/src/edge/registry.d.ts.map +1 -0
  60. package/dist/src/edge/registry.js +79 -0
  61. package/dist/src/edge/registry.js.map +1 -0
  62. package/dist/src/errors/encoding.d.ts +1 -1
  63. package/dist/src/errors/encoding.d.ts.map +1 -1
  64. package/dist/src/errors/encoding.js +1 -1
  65. package/dist/src/errors/encoding.js.map +1 -1
  66. package/dist/src/errors/errors.d.ts +1 -1
  67. package/dist/src/errors/errors.d.ts.map +1 -1
  68. package/dist/src/errors/errors.js +1 -1
  69. package/dist/src/errors/errors.js.map +1 -1
  70. package/dist/src/errors/errors.test.js +1 -1
  71. package/dist/src/errors/helpers.d.ts +1 -1
  72. package/dist/src/errors/index.d.ts +5 -5
  73. package/dist/src/errors/index.js +5 -5
  74. package/dist/src/index.d.ts +12 -12
  75. package/dist/src/index.d.ts.map +1 -1
  76. package/dist/src/index.js +11 -12
  77. package/dist/src/index.js.map +1 -1
  78. package/dist/src/indexing.test.js +1 -1
  79. package/dist/src/proto/gen/dxos/client/services.d.ts +1009 -954
  80. package/dist/src/proto/gen/dxos/client/services.d.ts.map +1 -1
  81. package/dist/src/proto/gen/dxos/client/services.js +107 -94
  82. package/dist/src/proto/gen/dxos/client/services.js.map +1 -1
  83. package/dist/src/proto/gen/dxos/config.d.ts +55 -1
  84. package/dist/src/proto/gen/dxos/config.d.ts.map +1 -1
  85. package/dist/src/proto/gen/dxos/config.js +26 -0
  86. package/dist/src/proto/gen/dxos/config.js.map +1 -1
  87. package/dist/src/proto/gen/dxos/devtools/host.d.ts +31 -31
  88. package/dist/src/proto/gen/dxos/devtools/host.d.ts.map +1 -1
  89. package/dist/src/proto/gen/dxos/echo/metadata.d.ts +4 -0
  90. package/dist/src/proto/gen/dxos/echo/metadata.d.ts.map +1 -1
  91. package/dist/src/proto/gen/dxos/echo/metadata.js.map +1 -1
  92. package/dist/src/proto/gen/dxos/edge/messenger.d.ts +24 -0
  93. package/dist/src/proto/gen/dxos/edge/messenger.d.ts.map +1 -1
  94. package/dist/src/proto/gen/dxos/edge/messenger.js.map +1 -1
  95. package/dist/src/proto/gen/dxos/halo/credentials.d.ts +15 -1
  96. package/dist/src/proto/gen/dxos/halo/credentials.d.ts.map +1 -1
  97. package/dist/src/proto/gen/dxos/halo/credentials.js +9 -0
  98. package/dist/src/proto/gen/dxos/halo/credentials.js.map +1 -1
  99. package/dist/src/proto/gen/dxos/iframe.d.ts +0 -10
  100. package/dist/src/proto/gen/dxos/iframe.d.ts.map +1 -1
  101. package/dist/src/proto/gen/dxos/iframe.js.map +1 -1
  102. package/dist/src/proto/gen/dxos/rpc.d.ts +19 -0
  103. package/dist/src/proto/gen/dxos/rpc.d.ts.map +1 -1
  104. package/dist/src/proto/gen/dxos/rpc.js.map +1 -1
  105. package/dist/src/proto/gen/dxos/tracing.d.ts +0 -79
  106. package/dist/src/proto/gen/dxos/tracing.d.ts.map +1 -1
  107. package/dist/src/proto/gen/google/protobuf.d.ts +326 -40
  108. package/dist/src/proto/gen/google/protobuf.d.ts.map +1 -1
  109. package/dist/src/proto/gen/google/protobuf.js +127 -1
  110. package/dist/src/proto/gen/google/protobuf.js.map +1 -1
  111. package/dist/src/proto/gen/index.d.ts +32 -7
  112. package/dist/src/proto/gen/index.d.ts.map +1 -1
  113. package/dist/src/proto/gen/index.js +1 -1
  114. package/dist/src/proto/gen/index.js.map +1 -1
  115. package/dist/src/proto/index.d.ts +2 -2
  116. package/dist/src/proto/index.js +1 -1
  117. package/dist/src/proto/types.d.ts +1 -1
  118. package/dist/src/space-archive.d.ts +60 -1
  119. package/dist/src/space-archive.d.ts.map +1 -1
  120. package/dist/src/space-archive.js +13 -1
  121. package/dist/src/space-archive.js.map +1 -1
  122. package/dist/src/types.d.ts +2 -2
  123. package/dist/tsconfig.tsbuildinfo +1 -1
  124. package/package.json +14 -14
  125. package/src/FeedProtocol.ts +320 -0
  126. package/src/FunctionProtocol.ts +2 -4
  127. package/src/buf/proto/gen/dxos/agent/dashboard_pb.ts +1 -1
  128. package/src/buf/proto/gen/dxos/agent/echo-proxy_pb.ts +1 -1
  129. package/src/buf/proto/gen/dxos/agent/epoch_pb.ts +1 -1
  130. package/src/buf/proto/gen/dxos/agent/functions_pb.ts +1 -1
  131. package/src/buf/proto/gen/dxos/bot_pb.ts +1 -1
  132. package/src/buf/proto/gen/dxos/client/invitation_pb.ts +1 -1
  133. package/src/buf/proto/gen/dxos/client/logging_pb.ts +1 -1
  134. package/src/buf/proto/gen/dxos/client/queue_pb.ts +51 -2
  135. package/src/buf/proto/gen/dxos/client/services_pb.ts +114 -40
  136. package/src/buf/proto/gen/dxos/config_pb.ts +122 -4
  137. package/src/buf/proto/gen/dxos/devtools/diagnostics_pb.ts +1 -1
  138. package/src/buf/proto/gen/dxos/devtools/host_pb.ts +1 -1
  139. package/src/buf/proto/gen/dxos/devtools/swarm_pb.ts +1 -1
  140. package/src/buf/proto/gen/dxos/echo/blob_pb.ts +1 -1
  141. package/src/buf/proto/gen/dxos/echo/feed_pb.ts +1 -1
  142. package/src/buf/proto/gen/dxos/echo/filter_pb.ts +1 -1
  143. package/src/buf/proto/gen/dxos/echo/indexing_pb.ts +1 -1
  144. package/src/buf/proto/gen/dxos/echo/metadata_pb.ts +9 -2
  145. package/src/buf/proto/gen/dxos/echo/model/document_pb.ts +1 -1
  146. package/src/buf/proto/gen/dxos/echo/model/messenger_pb.ts +1 -1
  147. package/src/buf/proto/gen/dxos/echo/model/text_pb.ts +1 -1
  148. package/src/buf/proto/gen/dxos/echo/object_pb.ts +1 -1
  149. package/src/buf/proto/gen/dxos/echo/query_pb.ts +1 -1
  150. package/src/buf/proto/gen/dxos/echo/service_pb.ts +1 -1
  151. package/src/buf/proto/gen/dxos/echo/snapshot_pb.ts +1 -1
  152. package/src/buf/proto/gen/dxos/echo/timeframe_pb.ts +1 -1
  153. package/src/buf/proto/gen/dxos/edge/calls_pb.ts +1 -1
  154. package/src/buf/proto/gen/dxos/edge/messenger_pb.ts +39 -6
  155. package/src/buf/proto/gen/dxos/edge/signal_pb.ts +1 -1
  156. package/src/buf/proto/gen/dxos/error_pb.ts +1 -1
  157. package/src/buf/proto/gen/dxos/field_options_pb.ts +1 -1
  158. package/src/buf/proto/gen/dxos/google_pb.ts +1 -1
  159. package/src/buf/proto/gen/dxos/gravity_pb.ts +1 -1
  160. package/src/buf/proto/gen/dxos/halo/credentials/auth_pb.ts +1 -1
  161. package/src/buf/proto/gen/dxos/halo/credentials/greet_pb.ts +1 -1
  162. package/src/buf/proto/gen/dxos/halo/credentials/identity_pb.ts +1 -1
  163. package/src/buf/proto/gen/dxos/halo/credentials_pb.ts +49 -3
  164. package/src/buf/proto/gen/dxos/halo/invitations_pb.ts +1 -1
  165. package/src/buf/proto/gen/dxos/halo/keyring_pb.ts +1 -1
  166. package/src/buf/proto/gen/dxos/halo/keys_pb.ts +1 -1
  167. package/src/buf/proto/gen/dxos/halo/signed_pb.ts +1 -1
  168. package/src/buf/proto/gen/dxos/iframe_pb.ts +2 -14
  169. package/src/buf/proto/gen/dxos/keys_pb.ts +1 -1
  170. package/src/buf/proto/gen/dxos/mesh/bridge_pb.ts +1 -1
  171. package/src/buf/proto/gen/dxos/mesh/broadcast_pb.ts +1 -1
  172. package/src/buf/proto/gen/dxos/mesh/messaging_pb.ts +1 -1
  173. package/src/buf/proto/gen/dxos/mesh/muxer_pb.ts +1 -1
  174. package/src/buf/proto/gen/dxos/mesh/presence_pb.ts +1 -1
  175. package/src/buf/proto/gen/dxos/mesh/protocol_pb.ts +1 -1
  176. package/src/buf/proto/gen/dxos/mesh/replicator_pb.ts +1 -1
  177. package/src/buf/proto/gen/dxos/mesh/signal_pb.ts +1 -1
  178. package/src/buf/proto/gen/dxos/mesh/swarm_pb.ts +1 -1
  179. package/src/buf/proto/gen/dxos/mesh/teleport/admission-discovery_pb.ts +1 -1
  180. package/src/buf/proto/gen/dxos/mesh/teleport/auth_pb.ts +1 -1
  181. package/src/buf/proto/gen/dxos/mesh/teleport/automerge_pb.ts +1 -1
  182. package/src/buf/proto/gen/dxos/mesh/teleport/blobsync_pb.ts +1 -1
  183. package/src/buf/proto/gen/dxos/mesh/teleport/control_pb.ts +1 -1
  184. package/src/buf/proto/gen/dxos/mesh/teleport/gossip_pb.ts +1 -1
  185. package/src/buf/proto/gen/dxos/mesh/teleport/notarization_pb.ts +1 -1
  186. package/src/buf/proto/gen/dxos/mesh/teleport/replicator_pb.ts +1 -1
  187. package/src/buf/proto/gen/dxos/registry_pb.ts +1 -1
  188. package/src/buf/proto/gen/dxos/rpc_pb.ts +37 -8
  189. package/src/buf/proto/gen/dxos/service/agentmanager_pb.ts +1 -1
  190. package/src/buf/proto/gen/dxos/service/publisher_pb.ts +1 -1
  191. package/src/buf/proto/gen/dxos/service/supervisor_pb.ts +1 -1
  192. package/src/buf/proto/gen/dxos/service/tunnel_pb.ts +1 -1
  193. package/src/buf/proto/gen/dxos/tracing_pb.ts +12 -179
  194. package/src/buf/proto/gen/dxos/type_pb.ts +1 -1
  195. package/src/buf/proto/gen/dxos/value_pb.ts +1 -1
  196. package/src/buf/proto/gen/example/testing/data_pb.ts +1 -1
  197. package/src/buf/proto/gen/example/testing/rpc_pb.ts +1 -1
  198. package/src/codec.test.ts +1 -1
  199. package/src/edge/EdgeFunctionEnv.ts +25 -27
  200. package/src/edge/edge.ts +120 -0
  201. package/src/edge/errors.ts +1 -1
  202. package/src/edge/index.ts +4 -3
  203. package/src/edge/registry.ts +96 -0
  204. package/src/errors/encoding.ts +2 -3
  205. package/src/errors/errors.test.ts +1 -1
  206. package/src/errors/errors.ts +2 -3
  207. package/src/errors/helpers.ts +1 -1
  208. package/src/errors/index.ts +5 -5
  209. package/src/index.ts +12 -14
  210. package/src/indexing.test.ts +1 -1
  211. package/src/proto/dxos/client/queue.proto +11 -0
  212. package/src/proto/dxos/client/services.proto +19 -1
  213. package/src/proto/dxos/config.proto +47 -2
  214. package/src/proto/dxos/echo/metadata.proto +3 -0
  215. package/src/proto/dxos/edge/messenger.proto +10 -0
  216. package/src/proto/dxos/halo/credentials.proto +15 -0
  217. package/src/proto/dxos/iframe.proto +0 -3
  218. package/src/proto/dxos/rpc.proto +7 -0
  219. package/src/proto/dxos/tracing.proto +0 -40
  220. package/src/proto/gen/dxos/client/services.ts +1009 -954
  221. package/src/proto/gen/dxos/config.ts +55 -1
  222. package/src/proto/gen/dxos/devtools/host.ts +31 -31
  223. package/src/proto/gen/dxos/echo/metadata.ts +4 -0
  224. package/src/proto/gen/dxos/edge/messenger.ts +24 -0
  225. package/src/proto/gen/dxos/halo/credentials.ts +15 -1
  226. package/src/proto/gen/dxos/iframe.ts +0 -10
  227. package/src/proto/gen/dxos/rpc.ts +19 -0
  228. package/src/proto/gen/dxos/tracing.ts +0 -76
  229. package/src/proto/gen/google/protobuf.ts +326 -40
  230. package/src/proto/gen/index.ts +33 -8
  231. package/src/proto/index.ts +2 -2
  232. package/src/proto/types.ts +1 -1
  233. package/src/space-archive.ts +70 -1
  234. package/src/types.ts +2 -2
  235. package/dist/src/queue.d.ts +0 -3
  236. package/dist/src/queue.d.ts.map +0 -1
  237. package/dist/src/queue.js +0 -5
  238. package/dist/src/queue.js.map +0 -1
  239. package/src/queue.ts +0 -14
@@ -4,7 +4,7 @@
4
4
 
5
5
  import { describe, expect, test } from 'vitest';
6
6
 
7
- import { ApiError } from './base-errors.js';
7
+ import { ApiError } from './base-errors.ts';
8
8
 
9
9
  describe('Errors', () => {
10
10
  test('test', async () => {
@@ -5,9 +5,8 @@
5
5
  import { BaseError } from '@dxos/errors';
6
6
  import { PublicKey } from '@dxos/keys';
7
7
 
8
- import type { ObjectId } from '../types.js';
9
-
10
- import { registerError, registerErrorMessageContext, registerErrorNoArgs } from './helpers.js';
8
+ import type { ObjectId } from '../types.ts';
9
+ import { registerError, registerErrorMessageContext, registerErrorNoArgs } from './helpers.ts';
11
10
 
12
11
  /**
13
12
  * Thrown when request was terminated because the RPC endpoint has been closed.
@@ -5,7 +5,7 @@
5
5
  import { BaseError } from '@dxos/errors';
6
6
  import { invariant } from '@dxos/invariant';
7
7
 
8
- import { type Error as SerializedErrorProto } from '../proto/gen/dxos/error.js';
8
+ import { type Error as SerializedErrorProto } from '../proto/gen/dxos/error.ts';
9
9
 
10
10
  export const reconstructError = (error: SerializedErrorProto) => {
11
11
  const { name, message, context } = error;
@@ -2,8 +2,8 @@
2
2
  // Copyright 2022 DXOS.org
3
3
  //
4
4
 
5
- export * from './encoding.js';
6
- export * from './errors.js';
7
- export * from './helpers.js';
8
- export * from './base-errors.js';
9
- export * from './parameter.js';
5
+ export * from './encoding.ts';
6
+ export * from './errors.ts';
7
+ export * from './helpers.ts';
8
+ export * from './base-errors.ts';
9
+ export * from './parameter.ts';
package/src/index.ts CHANGED
@@ -2,17 +2,15 @@
2
2
  // Copyright 2021 DXOS.org
3
3
  //
4
4
 
5
- // TODO(burdon): Why export .js?
6
-
7
- export * from './automerge.js';
8
- export * from './edge/index.js';
9
- export * from './errors/index.js';
10
- export * from './indexing.js';
11
- export * from './messenger.js';
12
- export * from './profile-archive.js';
13
- export * from './queue.js';
14
- export * from './space-archive.js';
15
- export * from './storage.js';
16
- export * from './tracing.js';
17
- export type * from './types.js';
18
- export * as FunctionProtocol from './FunctionProtocol.js';
5
+ export * from './automerge.ts';
6
+ export * from './edge/index.ts';
7
+ export * from './errors/index.ts';
8
+ export * from './indexing.ts';
9
+ export * from './messenger.ts';
10
+ export * from './profile-archive.ts';
11
+ export * from './space-archive.ts';
12
+ export * from './storage.ts';
13
+ export * from './tracing.ts';
14
+ export type * from './types.ts';
15
+ export * as FunctionProtocol from './FunctionProtocol.ts';
16
+ export * as FeedProtocol from './FeedProtocol.ts';
@@ -4,7 +4,7 @@
4
4
 
5
5
  import { describe, expect, test } from 'vitest';
6
6
 
7
- import { ObjectPointerVersion, objectPointerCodec } from './indexing.js';
7
+ import { ObjectPointerVersion, objectPointerCodec } from './indexing.ts';
8
8
 
9
9
  describe('Indexing object pointer codec', () => {
10
10
  test('getVersion', async () => {
@@ -60,8 +60,19 @@ message DeleteFromQueueRequest {
60
60
  repeated string object_ids = 4;
61
61
  }
62
62
 
63
+ message SyncQueueRequest {
64
+ string subspace_tag = 1;
65
+ string space_id = 2;
66
+ string queue_id = 3;
67
+ /// Whether to push local changes to the server. Defaults to true.
68
+ optional bool should_push = 4;
69
+ /// Whether to pull remote changes from the server. Defaults to true.
70
+ optional bool should_pull = 5;
71
+ }
72
+
63
73
  service QueueService {
64
74
  rpc QueryQueue(QueryQueueRequest) returns (QueueQueryResult);
65
75
  rpc InsertIntoQueue(InsertIntoQueueRequest) returns (google.protobuf.Empty);
66
76
  rpc DeleteFromQueue(DeleteFromQueueRequest) returns (google.protobuf.Empty);
77
+ rpc SyncQueue(SyncQueueRequest) returns (google.protobuf.Empty);
67
78
  }
@@ -72,6 +72,7 @@ message Platform {
72
72
  BROWSER = 0;
73
73
  SHARED_WORKER = 1;
74
74
  NODE = 2;
75
+ DEDICATED_WORKER = 3;
75
76
  }
76
77
 
77
78
  PLATFORM_TYPE type = 1;
@@ -331,6 +332,8 @@ message Space {
331
332
  optional PipelineState pipeline = 3;
332
333
  optional dxos.error.Error error = 4;
333
334
  optional dxos.echo.metadata.EdgeReplicationSetting edge_replication = 6;
335
+ repeated string tags = 7;
336
+ dxos.halo.credentials.MembershipPolicy membership_policy = 8;
334
337
 
335
338
  repeated SpaceMember members = 10;
336
339
  optional dxos.keys.PublicKey creator = 11;
@@ -341,6 +344,11 @@ message Space {
341
344
 
342
345
  // TODO(burdon): Create type for epoch?
343
346
 
347
+ message CreateSpaceRequest {
348
+ repeated string tags = 1;
349
+ dxos.halo.credentials.MembershipPolicy membership_policy = 2;
350
+ }
351
+
344
352
  message UpdateSpaceRequest {
345
353
  dxos.keys.PublicKey space_key = 1;
346
354
 
@@ -435,12 +443,22 @@ message JoinBySpaceKeyRequest {
435
443
  }
436
444
 
437
445
  message SpaceArchive {
446
+ enum Format {
447
+ // Tar-based binary archive (default).
448
+ BINARY = 0;
449
+ // JSON encoding of {@link dxos.echo.db.SerializedSpace}.
450
+ JSON = 1;
451
+ }
452
+
438
453
  string filename = 1;
439
454
  bytes contents = 2;
455
+ optional Format format = 3;
440
456
  }
441
457
 
442
458
  message ExportSpaceRequest {
443
459
  string space_id = 1;
460
+ // Archive format to produce. Defaults to BINARY.
461
+ optional SpaceArchive.Format format = 2;
444
462
  }
445
463
 
446
464
  message ExportSpaceResponse {
@@ -457,7 +475,7 @@ message ImportSpaceResponse {
457
475
  }
458
476
 
459
477
  service SpacesService {
460
- rpc CreateSpace(google.protobuf.Empty) returns (Space);
478
+ rpc CreateSpace(CreateSpaceRequest) returns (Space);
461
479
  rpc UpdateSpace(UpdateSpaceRequest) returns (google.protobuf.Empty);
462
480
  rpc QuerySpaces(google.protobuf.Empty) returns (stream QuerySpacesResponse);
463
481
 
@@ -59,7 +59,7 @@ message Module {
59
59
  optional string id = 8; // TODO(burdon): Ensured FQ (e.g., 'dxos.app.xxx')
60
60
  optional string name = 1; // TODO(burdon): Replace with id (or key?)
61
61
  optional string type = 2; // TODO(burdon): Define namespace (e.g.,
62
- // 'dxos.org/type/frame' vs. 'dxos.type.frame')
62
+ // 'org.dxos.type.frame')
63
63
 
64
64
  // TODO(burdon): Developer info message.
65
65
 
@@ -84,6 +84,17 @@ message Module {
84
84
 
85
85
  message Runtime {
86
86
  message Client {
87
+ /// Where client services run. Drives `createClientServices` routing.
88
+ enum ServicesMode {
89
+ UNSPECIFIED_SERVICES_MODE = 0;
90
+ /// Run services in the same thread as the client.
91
+ HOST = 1;
92
+ /// Run services in a SharedWorker (single instance shared across tabs).
93
+ SHARED_WORKER = 2;
94
+ /// Run services in a dedicated Worker elected via a lock (leader/follower).
95
+ DEDICATED_WORKER = 3;
96
+ }
97
+
87
98
  message Storage {
88
99
  enum StorageDriver {
89
100
  RAM = 0;
@@ -98,6 +109,20 @@ message Runtime {
98
109
  JSONDOWN = 12;
99
110
  }
100
111
 
112
+ /// Storage backing for SQLite (indexes & persistent state). The caller must supply the
113
+ /// matching worker factory / path — `createClientServices` does not pick a mode from the
114
+ /// presence of options.
115
+ enum SqliteMode {
116
+ UNSPECIFIED_SQLITE_MODE = 0;
117
+ /// Ephemeral in-memory SQLite. Indexes are rebuilt on each start.
118
+ MEMORY = 1;
119
+ /// OPFS-backed SQLite running in a dedicated worker (browser).
120
+ /// Requires `createOpfsWorker` to be passed to `createClientServices`.
121
+ OPFS = 2;
122
+ /// File-backed SQLite (Node/Bun). Uses `data_root` to locate the database file.
123
+ FILE = 3;
124
+ }
125
+
101
126
  optional bool persistent = 1;
102
127
  optional StorageDriver key_store = 2;
103
128
  optional StorageDriver data_store = 3;
@@ -107,6 +132,9 @@ message Runtime {
107
132
  * @deprecated
108
133
  */
109
134
  optional bool space_fragmentation = 5;
135
+
136
+ /// Backing store for SQLite runtimes. Defaults to MEMORY when unset.
137
+ optional SqliteMode sqlite_mode = 6;
110
138
  }
111
139
 
112
140
  message Log {
@@ -156,7 +184,24 @@ message Runtime {
156
184
 
157
185
  optional EdgeFeatures edge_features = 11;
158
186
 
159
- optional bool enable_local_queues = 13;
187
+ /// Observability group attached as metadata to signaling requests.
188
+ /// NOTE: When running through a shared worker, subsequent client connections can refresh this
189
+ /// value (last-writer-wins); the first client still determines the worker's other config.
190
+ optional string observability_group = 13;
191
+
192
+ /// Enable telemetry metadata attached to signaling requests.
193
+ /// NOTE: When running through a shared worker, subsequent client connections can refresh this
194
+ /// value (last-writer-wins); the first client still determines the worker's other config.
195
+ optional bool signal_telemetry_enabled = 14;
196
+
197
+ /// Use in-process (single-client) coordinator for dedicated-worker mode.
198
+ /// Bypasses SharedWorker; used for WKWebView where the coordinator SharedWorker port is unreliable.
199
+ optional bool single_client_mode = 15;
200
+
201
+ /// Deployment mode for client services. Read by `createClientServices` to select between
202
+ /// in-process (HOST), SharedWorker, and dedicated Worker runtimes. Required when no
203
+ /// `remote_source` is configured.
204
+ optional ServicesMode services_mode = 16;
160
205
  }
161
206
 
162
207
  message App {
@@ -54,6 +54,9 @@ message SpaceMetadata {
54
54
  /// Space key.
55
55
  dxos.keys.PublicKey key = 1;
56
56
 
57
+ /// Immutable tags assigned at space creation time.
58
+ repeated string tags = 12;
59
+
57
60
  /// ACTIVE, INACTIVE, etc.
58
61
  optional dxos.client.services.SpaceState state = 10;
59
62
 
@@ -76,9 +76,19 @@ message Message {
76
76
  /// Maybe be used to address a service at EDGE, but also to address components inside the client.
77
77
  optional string service_id = 20;
78
78
 
79
+ optional TraceContext trace_context = 21;
80
+
79
81
  optional google.protobuf.Any payload = 100;
80
82
  }
81
83
 
84
+ /// W3C Trace Context propagation (https://www.w3.org/TR/trace-context/).
85
+ message TraceContext {
86
+ /// W3C `traceparent` header value (e.g. "00-<trace-id>-<parent-id>-<trace-flags>").
87
+ string traceparent = 1;
88
+ /// W3C `tracestate` header value; vendor-specific key-value pairs.
89
+ optional string tracestate = 2;
90
+ }
91
+
82
92
  //
83
93
  // Swarms are used to publish and subscribe to messages based on a topic.
84
94
  //
@@ -28,9 +28,18 @@ import "dxos/keys.proto";
28
28
  // First message written to initial Feed in a new Space.
29
29
  //
30
30
 
31
+ enum MembershipPolicy {
32
+ /// Members can be invited by admins/owners.
33
+ INVITE = 0;
34
+ /// No new members can be added after genesis.
35
+ LOCKED = 1;
36
+ }
37
+
31
38
  // [ASSERTION]
32
39
  message SpaceGenesis {
33
40
  dxos.keys.PublicKey space_key = 1; // Feeds belong to Spaces.
41
+ repeated string tags = 2;
42
+ MembershipPolicy membership_policy = 3;
34
43
  }
35
44
 
36
45
  //
@@ -60,6 +69,9 @@ message SpaceMember {
60
69
  dxos.keys.PublicKey space_key = 1;
61
70
  Role role = 2;
62
71
 
72
+ /// Immutable tags assigned at space creation time.
73
+ repeated string tags = 6;
74
+
63
75
  // TODO(burdon): Identity key?
64
76
  optional ProfileDocument profile = 3;
65
77
 
@@ -163,6 +175,8 @@ enum DeviceType {
163
175
  UNKNOWN = 0;
164
176
  BROWSER = 1;
165
177
  NATIVE = 2;
178
+ // TODO(wittjosiah): Rename "agent" to avoid naming collision with AI agents.
179
+ // TODO(wittjosiah): Unknown, Browser, CLI, Desktop, Mobile, Custodian?
166
180
  AGENT = 3;
167
181
  AGENT_MANAGED = 4;
168
182
  MOBILE = 5;
@@ -188,6 +202,7 @@ message DeviceProfile {
188
202
  }
189
203
 
190
204
  /// [ASSERTION]: Sets default space for identity.
205
+ /// @deprecated Default space is no longer managed by the SDK. Existing credentials are ignored.
191
206
  message DefaultSpace {
192
207
  string space_id = 1;
193
208
  }
@@ -15,9 +15,6 @@ message StartRequest {
15
15
  string origin = 1;
16
16
  /// Key for the iframe resource lock used to determine when the service is closing.
17
17
  optional string lock_key = 2;
18
- // TODO(nf): extract or remove?
19
- optional string observabilityGroup = 3;
20
- optional bool signalTelemetryEnabled = 4;
21
18
  }
22
19
 
23
20
  /// Iframe-to-worker RPCs.
@@ -29,11 +29,18 @@ message RpcMessage {
29
29
  }
30
30
  }
31
31
 
32
+ /// W3C trace context carried across RPC boundaries.
33
+ message TraceContext {
34
+ string traceparent = 1;
35
+ optional string tracestate = 2;
36
+ }
37
+
32
38
  message Request {
33
39
  int32 id = 1;
34
40
  string method = 2;
35
41
  google.protobuf.Any payload = 3;
36
42
  bool stream = 4;
43
+ optional TraceContext trace_context = 5;
37
44
  }
38
45
 
39
46
  message Response {
@@ -30,42 +30,6 @@ message ResourceLink {
30
30
  google.protobuf.Struct attributes = 4;
31
31
  }
32
32
 
33
- message Span {
34
- int32 id = 1;
35
- optional int32 parent_id = 2;
36
- optional int32 resource_id = 3;
37
- string method_name = 4;
38
-
39
- // TODO(dmaretskyi): Figure out proper sub-millisecond timestamp type.
40
- string start_ts = 5;
41
- optional string end_ts = 6;
42
-
43
- optional dxos.error.Error error = 11;
44
- }
45
-
46
- message StreamTraceEvent {
47
- message ResourceAdded {
48
- Resource resource = 1;
49
- }
50
-
51
- message ResourceRemoved {
52
- int32 id = 1;
53
- }
54
-
55
- message SpanAdded {
56
- Span span = 1;
57
- }
58
-
59
- message LogAdded {
60
- dxos.client.services.LogEntry log = 1;
61
- }
62
-
63
- repeated ResourceAdded resource_added = 1;
64
- repeated ResourceRemoved resource_removed = 2;
65
- repeated SpanAdded span_added = 3;
66
- repeated LogAdded log_added = 4;
67
- }
68
-
69
33
  message Metric {
70
34
  message Counter {
71
35
  double value = 1;
@@ -110,7 +74,3 @@ message Metric {
110
74
  Custom custom = 199;
111
75
  }
112
76
  }
113
-
114
- service TracingService {
115
- rpc StreamTrace(google.protobuf.Empty) returns (stream StreamTraceEvent);
116
- }