@aopslab/aops-server 0.1.0

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 (185) hide show
  1. package/LICENSE +202 -0
  2. package/NOTICE +6 -0
  3. package/README.md +21 -0
  4. package/aops-server-runtime.json +11 -0
  5. package/build/client/_app/immutable/chunks/2_TffmqH.js +1 -0
  6. package/build/client/_app/immutable/chunks/3DOfIKW0.js +1 -0
  7. package/build/client/_app/immutable/chunks/B2EkC-sy.js +1 -0
  8. package/build/client/_app/immutable/chunks/CMkIcmi1.js +2 -0
  9. package/build/client/_app/immutable/chunks/rqnVXeyB.js +1 -0
  10. package/build/client/_app/immutable/chunks/sZYZbj9W.js +1 -0
  11. package/build/client/_app/immutable/chunks/wbPk3Yxo.js +81 -0
  12. package/build/client/_app/immutable/entry/app.C7STLTX8.js +2 -0
  13. package/build/client/_app/immutable/entry/start.BC94hOaC.js +1 -0
  14. package/build/client/_app/immutable/nodes/0.BYBfjxZ5.js +1 -0
  15. package/build/client/_app/immutable/nodes/1.BNXFXajG.js +1 -0
  16. package/build/client/_app/version.json +1 -0
  17. package/build/env.js +70 -0
  18. package/build/env.js.map +1 -0
  19. package/build/handler.js +16 -0
  20. package/build/handler.js.map +1 -0
  21. package/build/index.js +139 -0
  22. package/build/index.js.map +1 -0
  23. package/build/server/chunks/0-RfB6m2nq.js +7 -0
  24. package/build/server/chunks/0-RfB6m2nq.js.map +1 -0
  25. package/build/server/chunks/1-_gg8Q0UT.js +9 -0
  26. package/build/server/chunks/1-_gg8Q0UT.js.map +1 -0
  27. package/build/server/chunks/_server.ts-6276EQIF.js +44 -0
  28. package/build/server/chunks/_server.ts-6276EQIF.js.map +1 -0
  29. package/build/server/chunks/_server.ts-B59WFQzX.js +174 -0
  30. package/build/server/chunks/_server.ts-B59WFQzX.js.map +1 -0
  31. package/build/server/chunks/_server.ts-BauJsLZI.js +40 -0
  32. package/build/server/chunks/_server.ts-BauJsLZI.js.map +1 -0
  33. package/build/server/chunks/_server.ts-BnGzJw2-.js +81 -0
  34. package/build/server/chunks/_server.ts-BnGzJw2-.js.map +1 -0
  35. package/build/server/chunks/_server.ts-CP7qM24V.js +34 -0
  36. package/build/server/chunks/_server.ts-CP7qM24V.js.map +1 -0
  37. package/build/server/chunks/_server.ts-Cbq_u99d.js +9 -0
  38. package/build/server/chunks/_server.ts-Cbq_u99d.js.map +1 -0
  39. package/build/server/chunks/_server.ts-Ch8fPT-o.js +92 -0
  40. package/build/server/chunks/_server.ts-Ch8fPT-o.js.map +1 -0
  41. package/build/server/chunks/_server.ts-Cv-yaXZI.js +7 -0
  42. package/build/server/chunks/_server.ts-Cv-yaXZI.js.map +1 -0
  43. package/build/server/chunks/_server.ts-D6lBwOON.js +34 -0
  44. package/build/server/chunks/_server.ts-D6lBwOON.js.map +1 -0
  45. package/build/server/chunks/_server.ts-D84K3pp9.js +11 -0
  46. package/build/server/chunks/_server.ts-D84K3pp9.js.map +1 -0
  47. package/build/server/chunks/_server.ts-DNzU1ToA.js +277 -0
  48. package/build/server/chunks/_server.ts-DNzU1ToA.js.map +1 -0
  49. package/build/server/chunks/_server.ts-DQQnw77t.js +17 -0
  50. package/build/server/chunks/_server.ts-DQQnw77t.js.map +1 -0
  51. package/build/server/chunks/_server.ts-DSxr5l15.js +18 -0
  52. package/build/server/chunks/_server.ts-DSxr5l15.js.map +1 -0
  53. package/build/server/chunks/_server.ts-DZYokvuR.js +80 -0
  54. package/build/server/chunks/_server.ts-DZYokvuR.js.map +1 -0
  55. package/build/server/chunks/_server.ts-Dcqwpz2t.js +144 -0
  56. package/build/server/chunks/_server.ts-Dcqwpz2t.js.map +1 -0
  57. package/build/server/chunks/_server.ts-Di9VJnF4.js +81 -0
  58. package/build/server/chunks/_server.ts-Di9VJnF4.js.map +1 -0
  59. package/build/server/chunks/_server.ts-FBEHFT8b.js +33 -0
  60. package/build/server/chunks/_server.ts-FBEHFT8b.js.map +1 -0
  61. package/build/server/chunks/_server.ts-gZytCuiJ.js +10 -0
  62. package/build/server/chunks/_server.ts-gZytCuiJ.js.map +1 -0
  63. package/build/server/chunks/_server.ts-tNULLyEO.js +261 -0
  64. package/build/server/chunks/_server.ts-tNULLyEO.js.map +1 -0
  65. package/build/server/chunks/agent-gateway-runtime-DTZ4SxaC.js +2598 -0
  66. package/build/server/chunks/agent-gateway-runtime-DTZ4SxaC.js.map +1 -0
  67. package/build/server/chunks/aops-runtime-config-wpVmg7T-.js +179 -0
  68. package/build/server/chunks/aops-runtime-config-wpVmg7T-.js.map +1 -0
  69. package/build/server/chunks/discovery-D9JnSgfu.js +894 -0
  70. package/build/server/chunks/discovery-D9JnSgfu.js.map +1 -0
  71. package/build/server/chunks/error.svelte-DgUOqi-L.js +45 -0
  72. package/build/server/chunks/error.svelte-DgUOqi-L.js.map +1 -0
  73. package/build/server/chunks/handler-BN3-p5rP.js +1733 -0
  74. package/build/server/chunks/handler-BN3-p5rP.js.map +1 -0
  75. package/build/server/chunks/hooks.server-C4wxiH5m.js +52 -0
  76. package/build/server/chunks/hooks.server-C4wxiH5m.js.map +1 -0
  77. package/build/server/chunks/index.js-nbqdVuWC.js +10698 -0
  78. package/build/server/chunks/index.js-nbqdVuWC.js.map +1 -0
  79. package/build/server/chunks/manifest.js-_Re-Wj-y.js +167 -0
  80. package/build/server/chunks/manifest.js-_Re-Wj-y.js.map +1 -0
  81. package/build/server/chunks/plugin-error-normalize-Bq14Qbz3.js +297 -0
  82. package/build/server/chunks/plugin-error-normalize-Bq14Qbz3.js.map +1 -0
  83. package/build/server/chunks/project-alias-DqE2v58Q.js +29 -0
  84. package/build/server/chunks/project-alias-DqE2v58Q.js.map +1 -0
  85. package/build/server/chunks/registry-5amIZito.js +289 -0
  86. package/build/server/chunks/registry-5amIZito.js.map +1 -0
  87. package/build/server/chunks/request-base-url-BDdrsaga.js +24 -0
  88. package/build/server/chunks/request-base-url-BDdrsaga.js.map +1 -0
  89. package/build/server/chunks/request-context-tNeFQjgb.js +422 -0
  90. package/build/server/chunks/request-context-tNeFQjgb.js.map +1 -0
  91. package/build/server/chunks/xf-result-BRDjvftr.js +17 -0
  92. package/build/server/chunks/xf-result-BRDjvftr.js.map +1 -0
  93. package/build/shims.js +33 -0
  94. package/build/shims.js.map +1 -0
  95. package/cockpit/.vite/manifest.json +198 -0
  96. package/cockpit/assets/dm-sans-latin-400-normal-BwCSEQnW.woff +0 -0
  97. package/cockpit/assets/dm-sans-latin-400-normal-CW0RaeGs.woff2 +0 -0
  98. package/cockpit/assets/dm-sans-latin-500-normal-B9HHJjqV.woff2 +0 -0
  99. package/cockpit/assets/dm-sans-latin-500-normal-Dr3UlScf.woff +0 -0
  100. package/cockpit/assets/dm-sans-latin-700-normal-CUSSCpQX.woff +0 -0
  101. package/cockpit/assets/dm-sans-latin-700-normal-DvUfVpUG.woff2 +0 -0
  102. package/cockpit/assets/dm-sans-latin-ext-400-normal-BjWJ59Pq.woff +0 -0
  103. package/cockpit/assets/dm-sans-latin-ext-400-normal-BtiwyxMk.woff2 +0 -0
  104. package/cockpit/assets/dm-sans-latin-ext-500-normal-BJfUCQsA.woff2 +0 -0
  105. package/cockpit/assets/dm-sans-latin-ext-500-normal-DR84L5F-.woff +0 -0
  106. package/cockpit/assets/dm-sans-latin-ext-700-normal-BLI3TTWz.woff +0 -0
  107. package/cockpit/assets/dm-sans-latin-ext-700-normal-CJIcxD6K.woff2 +0 -0
  108. package/cockpit/assets/index-DDswO4B1.css +1 -0
  109. package/cockpit/assets/index-bovtnZ98.js +18 -0
  110. package/cockpit/assets/jetbrains-mono-cyrillic-400-normal-BEIGL1Tu.woff2 +0 -0
  111. package/cockpit/assets/jetbrains-mono-cyrillic-400-normal-ugxPyKxw.woff +0 -0
  112. package/cockpit/assets/jetbrains-mono-greek-400-normal-B9oWc5Lo.woff +0 -0
  113. package/cockpit/assets/jetbrains-mono-greek-400-normal-C190GLew.woff2 +0 -0
  114. package/cockpit/assets/jetbrains-mono-latin-400-normal-6-qcROiO.woff +0 -0
  115. package/cockpit/assets/jetbrains-mono-latin-400-normal-V6pRDFza.woff2 +0 -0
  116. package/cockpit/assets/jetbrains-mono-latin-ext-400-normal-Bc8Ftmh3.woff2 +0 -0
  117. package/cockpit/assets/jetbrains-mono-latin-ext-400-normal-fXTG6kC5.woff +0 -0
  118. package/cockpit/assets/jetbrains-mono-vietnamese-400-normal-CqNFfHCs.woff +0 -0
  119. package/cockpit/assets/outfit-latin-400-normal-BGsTXAXT.woff2 +0 -0
  120. package/cockpit/assets/outfit-latin-400-normal-DMwTpYkH.woff +0 -0
  121. package/cockpit/assets/outfit-latin-600-normal-B7SfZ07L.woff2 +0 -0
  122. package/cockpit/assets/outfit-latin-600-normal-BEfTtDA7.woff +0 -0
  123. package/cockpit/assets/outfit-latin-ext-400-normal-5tcqmc2S.woff2 +0 -0
  124. package/cockpit/assets/outfit-latin-ext-400-normal-DHm7mdGe.woff +0 -0
  125. package/cockpit/assets/outfit-latin-ext-600-normal-B85nYjL1.woff2 +0 -0
  126. package/cockpit/assets/outfit-latin-ext-600-normal-CWJcPgd7.woff +0 -0
  127. package/cockpit/assets/unbounded-cyrillic-600-normal-B-s5c2Kn.woff +0 -0
  128. package/cockpit/assets/unbounded-cyrillic-600-normal-DW6uzIMB.woff2 +0 -0
  129. package/cockpit/assets/unbounded-latin-600-normal-BPdB_PEv.woff +0 -0
  130. package/cockpit/assets/unbounded-latin-600-normal-oRSANpZr.woff2 +0 -0
  131. package/cockpit/assets/unbounded-latin-ext-600-normal-0iZLtTDV.woff2 +0 -0
  132. package/cockpit/assets/unbounded-latin-ext-600-normal-ClMPf-bu.woff +0 -0
  133. package/cockpit/assets/unbounded-vietnamese-600-normal-BzfrgZ_C.woff +0 -0
  134. package/cockpit/assets/unbounded-vietnamese-600-normal-Cx2bTSHN.woff2 +0 -0
  135. package/cockpit/community.module-inventory.json +2389 -0
  136. package/cockpit/index.html +14 -0
  137. package/community-postgres.json +13 -0
  138. package/migrations/agentspace/0000_thin_carlie_cooper.sql +764 -0
  139. package/migrations/agentspace/meta/0000_snapshot.json +6885 -0
  140. package/migrations/agentspace/meta/_journal.json +13 -0
  141. package/migrations/chatv3/0000_dry_ego.sql +218 -0
  142. package/migrations/chatv3/0001_nosy_obadiah_stane.sql +35 -0
  143. package/migrations/chatv3/0002_narrow_darkhawk.sql +4 -0
  144. package/migrations/chatv3/0003_damp_zarek.sql +2 -0
  145. package/migrations/chatv3/0004_nervous_martin_li.sql +60 -0
  146. package/migrations/chatv3/0005_chatv3_server_encrypted_mode.sql +1 -0
  147. package/migrations/chatv3/meta/0000_snapshot.json +1887 -0
  148. package/migrations/chatv3/meta/0001_snapshot.json +2175 -0
  149. package/migrations/chatv3/meta/0002_snapshot.json +2229 -0
  150. package/migrations/chatv3/meta/0003_snapshot.json +2241 -0
  151. package/migrations/chatv3/meta/0004_snapshot.json +2746 -0
  152. package/migrations/chatv3/meta/_journal.json +48 -0
  153. package/migrations/docman/0000_curvy_valeria_richards.sql +257 -0
  154. package/migrations/docman/0001_massive_risque.sql +2 -0
  155. package/migrations/docman/0002_simple_logan.sql +50 -0
  156. package/migrations/docman/0003_quick_index.sql +45 -0
  157. package/migrations/docman/0004_known_summary.sql +9 -0
  158. package/migrations/docman/0005_vector_signal.sql +9 -0
  159. package/migrations/docman/0006_document_version_current_invariant.sql +15 -0
  160. package/migrations/docman/meta/_journal.json +55 -0
  161. package/migrations/projectman/0000_smooth_klaw.sql +257 -0
  162. package/migrations/projectman/0001_worthless_zodiak.sql +9 -0
  163. package/migrations/projectman/0002_board_rename.sql +108 -0
  164. package/migrations/projectman/0003_review_request.sql +62 -0
  165. package/migrations/projectman/0004_review_request_idempotency.sql +3 -0
  166. package/migrations/projectman/0005_allow_multi_sprint_per_task.sql +1 -0
  167. package/migrations/projectman/meta/_journal.json +48 -0
  168. package/migrations/sys/0000_loose_praxagora.sql +31 -0
  169. package/migrations/sys/0001_awesome_ronan.sql +2 -0
  170. package/migrations/sys/0002_steady_maximus.sql +2 -0
  171. package/migrations/sys/0003_escalating_rate_limiter.sql +2 -0
  172. package/migrations/sys/0004_rate_limiter_timestamptz.sql +22 -0
  173. package/migrations/sys/0005_sys_counters.sql +21 -0
  174. package/migrations/sys/meta/_journal.json +48 -0
  175. package/npm-shrinkwrap.json +4375 -0
  176. package/package.json +62 -0
  177. package/runtime/agentspace-host-adapter.mjs +64 -0
  178. package/runtime/agentspace-tooling.mjs +389 -0
  179. package/runtime/docman-host-adapter.mjs +177 -0
  180. package/runtime/docman-policy.mjs +450 -0
  181. package/runtime/docman-tooling.mjs +20 -0
  182. package/runtime/projectman-host-adapter.mjs +597 -0
  183. package/runtime/scope-context.mjs +99 -0
  184. package/scripts/community-host.mjs +626 -0
  185. package/scripts/community-migration-policy-v1.json +296 -0
@@ -0,0 +1,13 @@
1
+ {
2
+ "version": "7",
3
+ "dialect": "postgresql",
4
+ "entries": [
5
+ {
6
+ "idx": 0,
7
+ "version": "7",
8
+ "when": 1783704076764,
9
+ "tag": "0000_thin_carlie_cooper",
10
+ "breakpoints": true
11
+ }
12
+ ]
13
+ }
@@ -0,0 +1,218 @@
1
+ CREATE TABLE "chatv3-spaces" (
2
+ "id" uuid PRIMARY KEY DEFAULT gen_random_uuid() NOT NULL,
3
+ "tenantId" text DEFAULT 'default' NOT NULL,
4
+ "slug" text NOT NULL,
5
+ "title" text NOT NULL,
6
+ "description" text,
7
+ "externalRefs" jsonb DEFAULT '[]'::jsonb NOT NULL,
8
+ "status" text DEFAULT 'active' NOT NULL,
9
+ "createdBy" text,
10
+ "updatedBy" text,
11
+ "createdAt" timestamp with time zone DEFAULT now() NOT NULL,
12
+ "updatedAt" timestamp with time zone DEFAULT now() NOT NULL
13
+ );
14
+ --> statement-breakpoint
15
+ CREATE TABLE "chatv3-channels" (
16
+ "id" uuid PRIMARY KEY DEFAULT gen_random_uuid() NOT NULL,
17
+ "tenantId" text DEFAULT 'default' NOT NULL,
18
+ "spaceId" uuid NOT NULL,
19
+ "slug" text NOT NULL,
20
+ "title" text NOT NULL,
21
+ "purpose" text,
22
+ "status" text DEFAULT 'active' NOT NULL,
23
+ "generalRoomId" uuid,
24
+ "createdBy" text,
25
+ "updatedBy" text,
26
+ "createdAt" timestamp with time zone DEFAULT now() NOT NULL,
27
+ "updatedAt" timestamp with time zone DEFAULT now() NOT NULL,
28
+ "archivedAt" timestamp with time zone
29
+ );
30
+ --> statement-breakpoint
31
+ CREATE TABLE "chatv3-rooms" (
32
+ "id" uuid PRIMARY KEY DEFAULT gen_random_uuid() NOT NULL,
33
+ "tenantId" text DEFAULT 'default' NOT NULL,
34
+ "channelId" uuid NOT NULL,
35
+ "slug" text NOT NULL,
36
+ "title" text NOT NULL,
37
+ "kind" text DEFAULT 'session' NOT NULL,
38
+ "purpose" text,
39
+ "status" text DEFAULT 'active' NOT NULL,
40
+ "lastSeq" integer DEFAULT 0 NOT NULL,
41
+ "lastMessageAt" timestamp with time zone,
42
+ "currentEpoch" integer DEFAULT 0 NOT NULL,
43
+ "createdBy" text,
44
+ "updatedBy" text,
45
+ "createdAt" timestamp with time zone DEFAULT now() NOT NULL,
46
+ "updatedAt" timestamp with time zone DEFAULT now() NOT NULL,
47
+ "archivedAt" timestamp with time zone
48
+ );
49
+ --> statement-breakpoint
50
+ CREATE TABLE "chatv3-members" (
51
+ "id" uuid PRIMARY KEY DEFAULT gen_random_uuid() NOT NULL,
52
+ "tenantId" text DEFAULT 'default' NOT NULL,
53
+ "channelId" uuid NOT NULL,
54
+ "handle" text NOT NULL,
55
+ "displayName" text,
56
+ "actorKind" text DEFAULT 'agent' NOT NULL,
57
+ "roleKey" text DEFAULT 'member' NOT NULL,
58
+ "status" text DEFAULT 'active' NOT NULL,
59
+ "tokenHash" text NOT NULL,
60
+ "joinedViaKeyId" uuid,
61
+ "lastSeenAt" timestamp with time zone,
62
+ "joinedAt" timestamp with time zone DEFAULT now() NOT NULL,
63
+ "removedAt" timestamp with time zone,
64
+ "updatedAt" timestamp with time zone DEFAULT now() NOT NULL
65
+ );
66
+ --> statement-breakpoint
67
+ CREATE TABLE "chatv3-room-cursors" (
68
+ "id" uuid PRIMARY KEY DEFAULT gen_random_uuid() NOT NULL,
69
+ "tenantId" text DEFAULT 'default' NOT NULL,
70
+ "roomId" uuid NOT NULL,
71
+ "memberId" uuid NOT NULL,
72
+ "lastReadSeq" integer DEFAULT 0 NOT NULL,
73
+ "deliveredSeq" integer DEFAULT 0 NOT NULL,
74
+ "lastReadAt" timestamp with time zone,
75
+ "updatedAt" timestamp with time zone DEFAULT now() NOT NULL
76
+ );
77
+ --> statement-breakpoint
78
+ CREATE TABLE "chatv3-access-keys" (
79
+ "id" uuid PRIMARY KEY DEFAULT gen_random_uuid() NOT NULL,
80
+ "tenantId" text DEFAULT 'default' NOT NULL,
81
+ "channelId" uuid NOT NULL,
82
+ "keyId" text NOT NULL,
83
+ "verifierHash" text NOT NULL,
84
+ "label" text,
85
+ "roleKey" text DEFAULT 'member' NOT NULL,
86
+ "status" text DEFAULT 'active' NOT NULL,
87
+ "epoch" integer DEFAULT 1 NOT NULL,
88
+ "createdBy" text,
89
+ "createdAt" timestamp with time zone DEFAULT now() NOT NULL,
90
+ "revokedAt" timestamp with time zone,
91
+ "lastUsedAt" timestamp with time zone
92
+ );
93
+ --> statement-breakpoint
94
+ CREATE TABLE "chatv3-room-epochs" (
95
+ "id" uuid PRIMARY KEY DEFAULT gen_random_uuid() NOT NULL,
96
+ "tenantId" text DEFAULT 'default' NOT NULL,
97
+ "roomId" uuid NOT NULL,
98
+ "epoch" integer NOT NULL,
99
+ "cipherSuite" text NOT NULL,
100
+ "wrappedKeyBlob" text NOT NULL,
101
+ "kdfMeta" jsonb DEFAULT '{}'::jsonb NOT NULL,
102
+ "status" text DEFAULT 'active' NOT NULL,
103
+ "createdBy" text,
104
+ "createdAt" timestamp with time zone DEFAULT now() NOT NULL,
105
+ "retiredAt" timestamp with time zone
106
+ );
107
+ --> statement-breakpoint
108
+ CREATE TABLE "chatv3-member-devices" (
109
+ "id" uuid PRIMARY KEY DEFAULT gen_random_uuid() NOT NULL,
110
+ "tenantId" text DEFAULT 'default' NOT NULL,
111
+ "memberId" uuid NOT NULL,
112
+ "deviceLabel" text,
113
+ "identityPublicKey" text NOT NULL,
114
+ "signingPublicKey" text,
115
+ "status" text DEFAULT 'active' NOT NULL,
116
+ "createdAt" timestamp with time zone DEFAULT now() NOT NULL,
117
+ "lastSeenAt" timestamp with time zone,
118
+ "revokedAt" timestamp with time zone
119
+ );
120
+ --> statement-breakpoint
121
+ CREATE TABLE "chatv3-device-key-packages" (
122
+ "id" uuid PRIMARY KEY DEFAULT gen_random_uuid() NOT NULL,
123
+ "tenantId" text DEFAULT 'default' NOT NULL,
124
+ "deviceId" uuid NOT NULL,
125
+ "kind" text DEFAULT 'v0' NOT NULL,
126
+ "packageBlob" text NOT NULL,
127
+ "status" text DEFAULT 'available' NOT NULL,
128
+ "createdAt" timestamp with time zone DEFAULT now() NOT NULL,
129
+ "consumedAt" timestamp with time zone
130
+ );
131
+ --> statement-breakpoint
132
+ CREATE TABLE "chatv3-welcome-envelopes" (
133
+ "id" uuid PRIMARY KEY DEFAULT gen_random_uuid() NOT NULL,
134
+ "tenantId" text DEFAULT 'default' NOT NULL,
135
+ "roomId" uuid NOT NULL,
136
+ "epoch" integer NOT NULL,
137
+ "targetDeviceId" uuid NOT NULL,
138
+ "envelopeBlob" text NOT NULL,
139
+ "status" text DEFAULT 'pending' NOT NULL,
140
+ "createdBy" text,
141
+ "createdAt" timestamp with time zone DEFAULT now() NOT NULL,
142
+ "claimedAt" timestamp with time zone
143
+ );
144
+ --> statement-breakpoint
145
+ CREATE TABLE "chatv3-messages" (
146
+ "id" uuid PRIMARY KEY DEFAULT gen_random_uuid() NOT NULL,
147
+ "tenantId" text DEFAULT 'default' NOT NULL,
148
+ "roomId" uuid NOT NULL,
149
+ "seq" integer NOT NULL,
150
+ "senderMemberId" uuid NOT NULL,
151
+ "senderDeviceId" uuid,
152
+ "kind" text DEFAULT 'message' NOT NULL,
153
+ "protocolVersion" integer DEFAULT 1 NOT NULL,
154
+ "cipherSuite" text NOT NULL,
155
+ "epoch" integer NOT NULL,
156
+ "ciphertext" text NOT NULL,
157
+ "nonce" text NOT NULL,
158
+ "aad" text,
159
+ "authTag" text,
160
+ "mentions" jsonb DEFAULT '[]'::jsonb NOT NULL,
161
+ "replyToSeq" integer,
162
+ "idempotencyKey" text,
163
+ "createdAt" timestamp with time zone DEFAULT now() NOT NULL
164
+ );
165
+ --> statement-breakpoint
166
+ CREATE TABLE "chatv3-bindings" (
167
+ "id" uuid PRIMARY KEY DEFAULT gen_random_uuid() NOT NULL,
168
+ "tenantId" text DEFAULT 'default' NOT NULL,
169
+ "channelId" uuid NOT NULL,
170
+ "roomId" uuid,
171
+ "bindingType" text NOT NULL,
172
+ "refId" text,
173
+ "uri" text,
174
+ "title" text,
175
+ "note" text,
176
+ "createdBy" text,
177
+ "createdAt" timestamp with time zone DEFAULT now() NOT NULL
178
+ );
179
+ --> statement-breakpoint
180
+ ALTER TABLE "chatv3-channels" ADD CONSTRAINT "chatv3-channels_spaceId_chatv3-spaces_id_fk" FOREIGN KEY ("spaceId") REFERENCES "public"."chatv3-spaces"("id") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
181
+ ALTER TABLE "chatv3-rooms" ADD CONSTRAINT "chatv3-rooms_channelId_chatv3-channels_id_fk" FOREIGN KEY ("channelId") REFERENCES "public"."chatv3-channels"("id") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
182
+ ALTER TABLE "chatv3-members" ADD CONSTRAINT "chatv3-members_channelId_chatv3-channels_id_fk" FOREIGN KEY ("channelId") REFERENCES "public"."chatv3-channels"("id") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
183
+ ALTER TABLE "chatv3-room-cursors" ADD CONSTRAINT "chatv3-room-cursors_roomId_chatv3-rooms_id_fk" FOREIGN KEY ("roomId") REFERENCES "public"."chatv3-rooms"("id") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
184
+ ALTER TABLE "chatv3-room-cursors" ADD CONSTRAINT "chatv3-room-cursors_memberId_chatv3-members_id_fk" FOREIGN KEY ("memberId") REFERENCES "public"."chatv3-members"("id") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
185
+ ALTER TABLE "chatv3-access-keys" ADD CONSTRAINT "chatv3-access-keys_channelId_chatv3-channels_id_fk" FOREIGN KEY ("channelId") REFERENCES "public"."chatv3-channels"("id") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
186
+ ALTER TABLE "chatv3-room-epochs" ADD CONSTRAINT "chatv3-room-epochs_roomId_chatv3-rooms_id_fk" FOREIGN KEY ("roomId") REFERENCES "public"."chatv3-rooms"("id") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
187
+ ALTER TABLE "chatv3-member-devices" ADD CONSTRAINT "chatv3-member-devices_memberId_chatv3-members_id_fk" FOREIGN KEY ("memberId") REFERENCES "public"."chatv3-members"("id") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
188
+ ALTER TABLE "chatv3-device-key-packages" ADD CONSTRAINT "chatv3-device-key-packages_deviceId_chatv3-member-devices_id_fk" FOREIGN KEY ("deviceId") REFERENCES "public"."chatv3-member-devices"("id") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
189
+ ALTER TABLE "chatv3-welcome-envelopes" ADD CONSTRAINT "chatv3-welcome-envelopes_roomId_chatv3-rooms_id_fk" FOREIGN KEY ("roomId") REFERENCES "public"."chatv3-rooms"("id") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
190
+ ALTER TABLE "chatv3-welcome-envelopes" ADD CONSTRAINT "chatv3-welcome-envelopes_targetDeviceId_chatv3-member-devices_id_fk" FOREIGN KEY ("targetDeviceId") REFERENCES "public"."chatv3-member-devices"("id") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
191
+ ALTER TABLE "chatv3-messages" ADD CONSTRAINT "chatv3-messages_roomId_chatv3-rooms_id_fk" FOREIGN KEY ("roomId") REFERENCES "public"."chatv3-rooms"("id") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
192
+ ALTER TABLE "chatv3-bindings" ADD CONSTRAINT "chatv3-bindings_channelId_chatv3-channels_id_fk" FOREIGN KEY ("channelId") REFERENCES "public"."chatv3-channels"("id") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
193
+ ALTER TABLE "chatv3-bindings" ADD CONSTRAINT "chatv3-bindings_roomId_chatv3-rooms_id_fk" FOREIGN KEY ("roomId") REFERENCES "public"."chatv3-rooms"("id") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
194
+ CREATE UNIQUE INDEX "chatv3_space_tenant_slug_unique" ON "chatv3-spaces" USING btree ("tenantId","slug");--> statement-breakpoint
195
+ CREATE INDEX "chatv3_space_idx_tenant_status" ON "chatv3-spaces" USING btree ("tenantId","status");--> statement-breakpoint
196
+ CREATE UNIQUE INDEX "chatv3_channel_tenant_space_slug_unique" ON "chatv3-channels" USING btree ("tenantId","spaceId","slug");--> statement-breakpoint
197
+ CREATE INDEX "chatv3_channel_idx_tenant_space_status" ON "chatv3-channels" USING btree ("tenantId","spaceId","status");--> statement-breakpoint
198
+ CREATE UNIQUE INDEX "chatv3_room_tenant_channel_slug_unique" ON "chatv3-rooms" USING btree ("tenantId","channelId","slug");--> statement-breakpoint
199
+ CREATE INDEX "chatv3_room_idx_tenant_channel_status" ON "chatv3-rooms" USING btree ("tenantId","channelId","status");--> statement-breakpoint
200
+ CREATE INDEX "chatv3_room_idx_tenant_last_message" ON "chatv3-rooms" USING btree ("tenantId","lastMessageAt");--> statement-breakpoint
201
+ CREATE UNIQUE INDEX "chatv3_member_tenant_channel_handle_unique" ON "chatv3-members" USING btree ("tenantId","channelId","handle");--> statement-breakpoint
202
+ CREATE INDEX "chatv3_member_idx_tenant_channel_status" ON "chatv3-members" USING btree ("tenantId","channelId","status");--> statement-breakpoint
203
+ CREATE UNIQUE INDEX "chatv3_room_cursor_room_member_unique" ON "chatv3-room-cursors" USING btree ("roomId","memberId");--> statement-breakpoint
204
+ CREATE INDEX "chatv3_room_cursor_idx_member" ON "chatv3-room-cursors" USING btree ("tenantId","memberId");--> statement-breakpoint
205
+ CREATE UNIQUE INDEX "chatv3_access_key_tenant_key_id_unique" ON "chatv3-access-keys" USING btree ("tenantId","keyId");--> statement-breakpoint
206
+ CREATE INDEX "chatv3_access_key_idx_channel_status" ON "chatv3-access-keys" USING btree ("tenantId","channelId","status");--> statement-breakpoint
207
+ CREATE UNIQUE INDEX "chatv3_room_epoch_room_epoch_unique" ON "chatv3-room-epochs" USING btree ("roomId","epoch");--> statement-breakpoint
208
+ CREATE INDEX "chatv3_room_epoch_idx_room_status" ON "chatv3-room-epochs" USING btree ("tenantId","roomId","status");--> statement-breakpoint
209
+ CREATE INDEX "chatv3_member_device_idx_member_status" ON "chatv3-member-devices" USING btree ("tenantId","memberId","status");--> statement-breakpoint
210
+ CREATE INDEX "chatv3_device_key_package_idx_device_status" ON "chatv3-device-key-packages" USING btree ("deviceId","status");--> statement-breakpoint
211
+ CREATE INDEX "chatv3_welcome_envelope_idx_target_status" ON "chatv3-welcome-envelopes" USING btree ("targetDeviceId","status");--> statement-breakpoint
212
+ CREATE INDEX "chatv3_welcome_envelope_idx_room_epoch" ON "chatv3-welcome-envelopes" USING btree ("roomId","epoch");--> statement-breakpoint
213
+ CREATE UNIQUE INDEX "chatv3_message_room_seq_unique" ON "chatv3-messages" USING btree ("roomId","seq");--> statement-breakpoint
214
+ CREATE UNIQUE INDEX "chatv3_message_room_idempotency_unique" ON "chatv3-messages" USING btree ("roomId","idempotencyKey");--> statement-breakpoint
215
+ CREATE INDEX "chatv3_message_idx_room_created" ON "chatv3-messages" USING btree ("roomId","createdAt");--> statement-breakpoint
216
+ CREATE INDEX "chatv3_message_idx_tenant_room_kind" ON "chatv3-messages" USING btree ("tenantId","roomId","kind");--> statement-breakpoint
217
+ CREATE INDEX "chatv3_binding_idx_channel_type" ON "chatv3-bindings" USING btree ("tenantId","channelId","bindingType");--> statement-breakpoint
218
+ CREATE INDEX "chatv3_binding_idx_room" ON "chatv3-bindings" USING btree ("roomId");
@@ -0,0 +1,35 @@
1
+ CREATE TABLE "chatv3-presence" (
2
+ "id" uuid PRIMARY KEY DEFAULT gen_random_uuid() NOT NULL,
3
+ "tenantId" text DEFAULT 'default' NOT NULL,
4
+ "roomId" uuid NOT NULL,
5
+ "memberId" uuid NOT NULL,
6
+ "state" text DEFAULT 'active' NOT NULL,
7
+ "note" text,
8
+ "expiresAt" timestamp with time zone NOT NULL,
9
+ "updatedAt" timestamp with time zone DEFAULT now() NOT NULL
10
+ );
11
+ --> statement-breakpoint
12
+ CREATE TABLE "chatv3-webhooks" (
13
+ "id" uuid PRIMARY KEY DEFAULT gen_random_uuid() NOT NULL,
14
+ "tenantId" text DEFAULT 'default' NOT NULL,
15
+ "channelId" uuid NOT NULL,
16
+ "url" text NOT NULL,
17
+ "signingSecret" text NOT NULL,
18
+ "events" jsonb DEFAULT '[]'::jsonb NOT NULL,
19
+ "label" text,
20
+ "status" text DEFAULT 'active' NOT NULL,
21
+ "failCount" integer DEFAULT 0 NOT NULL,
22
+ "lastDeliveryAt" timestamp with time zone,
23
+ "lastFailureAt" timestamp with time zone,
24
+ "createdBy" text,
25
+ "createdAt" timestamp with time zone DEFAULT now() NOT NULL,
26
+ "updatedAt" timestamp with time zone DEFAULT now() NOT NULL
27
+ );
28
+ --> statement-breakpoint
29
+ ALTER TABLE "chatv3-room-cursors" ADD COLUMN "ackSeq" integer DEFAULT 0 NOT NULL;--> statement-breakpoint
30
+ ALTER TABLE "chatv3-presence" ADD CONSTRAINT "chatv3-presence_roomId_chatv3-rooms_id_fk" FOREIGN KEY ("roomId") REFERENCES "public"."chatv3-rooms"("id") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
31
+ ALTER TABLE "chatv3-presence" ADD CONSTRAINT "chatv3-presence_memberId_chatv3-members_id_fk" FOREIGN KEY ("memberId") REFERENCES "public"."chatv3-members"("id") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
32
+ ALTER TABLE "chatv3-webhooks" ADD CONSTRAINT "chatv3-webhooks_channelId_chatv3-channels_id_fk" FOREIGN KEY ("channelId") REFERENCES "public"."chatv3-channels"("id") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
33
+ CREATE UNIQUE INDEX "chatv3_presence_room_member_unique" ON "chatv3-presence" USING btree ("roomId","memberId");--> statement-breakpoint
34
+ CREATE INDEX "chatv3_presence_idx_room_expires" ON "chatv3-presence" USING btree ("roomId","expiresAt");--> statement-breakpoint
35
+ CREATE INDEX "chatv3_webhook_idx_channel_status" ON "chatv3-webhooks" USING btree ("tenantId","channelId","status");
@@ -0,0 +1,4 @@
1
+ ALTER TABLE "chatv3-channels" ADD COLUMN "ownerUserId" text;--> statement-breakpoint
2
+ ALTER TABLE "chatv3-members" ADD COLUMN "userId" text;--> statement-breakpoint
3
+ CREATE INDEX "chatv3_channel_idx_tenant_owner" ON "chatv3-channels" USING btree ("tenantId","ownerUserId");--> statement-breakpoint
4
+ CREATE INDEX "chatv3_member_idx_tenant_user" ON "chatv3-members" USING btree ("tenantId","userId");
@@ -0,0 +1,2 @@
1
+ ALTER TABLE "chatv3-channels" ADD COLUMN "guidanceMarkdown" text;--> statement-breakpoint
2
+ ALTER TABLE "chatv3-rooms" ADD COLUMN "guidanceMarkdown" text;
@@ -0,0 +1,60 @@
1
+ CREATE TABLE "chatv3-user-key-backups" (
2
+ "id" uuid PRIMARY KEY DEFAULT gen_random_uuid() NOT NULL,
3
+ "tenantId" text DEFAULT 'default' NOT NULL,
4
+ "userId" text NOT NULL,
5
+ "keyVersion" integer DEFAULT 1 NOT NULL,
6
+ "publicKeyAlgorithm" text NOT NULL,
7
+ "publicKeyFormat" text NOT NULL,
8
+ "publicKey" text NOT NULL,
9
+ "backupPackageVersion" integer DEFAULT 1 NOT NULL,
10
+ "kekSource" text NOT NULL,
11
+ "kdfName" text NOT NULL,
12
+ "kdfVersion" integer DEFAULT 1 NOT NULL,
13
+ "kdfSalt" text NOT NULL,
14
+ "kdfMemoryKiB" integer,
15
+ "kdfIterations" integer NOT NULL,
16
+ "kdfParallelism" integer DEFAULT 1 NOT NULL,
17
+ "wrapAlg" text DEFAULT 'aes-256-gcm' NOT NULL,
18
+ "nonce" text NOT NULL,
19
+ "ciphertext" text NOT NULL,
20
+ "aad" text,
21
+ "authTag" text,
22
+ "threatModelLabel" text NOT NULL,
23
+ "status" text DEFAULT 'active' NOT NULL,
24
+ "createdAt" timestamp with time zone DEFAULT now() NOT NULL,
25
+ "updatedAt" timestamp with time zone DEFAULT now() NOT NULL
26
+ );
27
+ --> statement-breakpoint
28
+ CREATE TABLE "chatv3-member-key-packages" (
29
+ "id" uuid PRIMARY KEY DEFAULT gen_random_uuid() NOT NULL,
30
+ "tenantId" text DEFAULT 'default' NOT NULL,
31
+ "channelId" uuid NOT NULL,
32
+ "memberId" uuid NOT NULL,
33
+ "recipientUserId" text NOT NULL,
34
+ "recipientUserKeyId" uuid NOT NULL,
35
+ "recipientKeyVersion" integer NOT NULL,
36
+ "packageVersion" integer DEFAULT 1 NOT NULL,
37
+ "packageAlg" text NOT NULL,
38
+ "ephemeralPublicKeyAlgorithm" text NOT NULL,
39
+ "ephemeralPublicKeyFormat" text NOT NULL,
40
+ "ephemeralPublicKey" text NOT NULL,
41
+ "nonce" text NOT NULL,
42
+ "ciphertext" text NOT NULL,
43
+ "aad" text,
44
+ "authTag" text,
45
+ "sourceEpoch" integer DEFAULT 1 NOT NULL,
46
+ "status" text DEFAULT 'usable' NOT NULL,
47
+ "staleReason" text,
48
+ "createdAt" timestamp with time zone DEFAULT now() NOT NULL,
49
+ "updatedAt" timestamp with time zone DEFAULT now() NOT NULL
50
+ );
51
+ --> statement-breakpoint
52
+ ALTER TABLE "chatv3-member-key-packages" ADD CONSTRAINT "chatv3-member-key-packages_channelId_chatv3-channels_id_fk" FOREIGN KEY ("channelId") REFERENCES "public"."chatv3-channels"("id") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
53
+ ALTER TABLE "chatv3-member-key-packages" ADD CONSTRAINT "chatv3-member-key-packages_memberId_chatv3-members_id_fk" FOREIGN KEY ("memberId") REFERENCES "public"."chatv3-members"("id") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
54
+ ALTER TABLE "chatv3-member-key-packages" ADD CONSTRAINT "chatv3-member-key-packages_recipientUserKeyId_chatv3-user-key-backups_id_fk" FOREIGN KEY ("recipientUserKeyId") REFERENCES "public"."chatv3-user-key-backups"("id") ON DELETE restrict ON UPDATE no action;--> statement-breakpoint
55
+ CREATE UNIQUE INDEX "chatv3_user_key_backup_tenant_user_unique" ON "chatv3-user-key-backups" USING btree ("tenantId","userId");--> statement-breakpoint
56
+ CREATE UNIQUE INDEX "chatv3_user_key_backup_tenant_user_version_unique" ON "chatv3-user-key-backups" USING btree ("tenantId","userId","keyVersion");--> statement-breakpoint
57
+ CREATE INDEX "chatv3_user_key_backup_idx_tenant_status" ON "chatv3-user-key-backups" USING btree ("tenantId","status");--> statement-breakpoint
58
+ CREATE UNIQUE INDEX "chatv3_member_key_package_tenant_channel_member_unique" ON "chatv3-member-key-packages" USING btree ("tenantId","channelId","memberId");--> statement-breakpoint
59
+ CREATE INDEX "chatv3_member_key_package_idx_recipient" ON "chatv3-member-key-packages" USING btree ("tenantId","recipientUserId","status");--> statement-breakpoint
60
+ CREATE INDEX "chatv3_member_key_package_idx_channel_status" ON "chatv3-member-key-packages" USING btree ("tenantId","channelId","status");
@@ -0,0 +1 @@
1
+ ALTER TABLE "chatv3-channels" ADD COLUMN "encryptionMode" text DEFAULT 'e2e' NOT NULL;