@undefineds.co/models 0.1.1 → 0.2.1

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 (228) hide show
  1. package/dist/agent.repository.d.ts +20 -40
  2. package/dist/agent.schema.d.ts +20 -1
  3. package/dist/agent.schema.js +25 -1
  4. package/dist/ai-config/index.d.ts +8 -6
  5. package/dist/ai-config/index.js +41 -23
  6. package/dist/ai-model.schema.d.ts +13 -1
  7. package/dist/ai-model.schema.js +17 -1
  8. package/dist/ai-provider.schema.d.ts +9 -1
  9. package/dist/ai-provider.schema.js +13 -1
  10. package/dist/approval.schema.d.ts +21 -1
  11. package/dist/approval.schema.js +33 -1
  12. package/dist/audit.schema.d.ts +17 -1
  13. package/dist/audit.schema.js +29 -1
  14. package/dist/chat.repository.d.ts +19 -15
  15. package/dist/chat.schema.d.ts +37 -1
  16. package/dist/chat.schema.js +47 -1
  17. package/dist/client/index.d.ts +121 -0
  18. package/dist/client/index.js +299 -0
  19. package/dist/contact.repository.d.ts +21 -21
  20. package/dist/contact.schema.d.ts +48 -1
  21. package/dist/contact.schema.js +60 -1
  22. package/dist/credential.schema.d.ts +15 -1
  23. package/dist/credential.schema.js +19 -1
  24. package/dist/discovery/index.d.ts +2 -2
  25. package/dist/discovery/index.js +2 -2
  26. package/dist/extension/extension.schema.d.ts +4 -1
  27. package/dist/extension/extension.schema.js +11 -1
  28. package/dist/extension/index.d.ts +1 -1
  29. package/dist/favorite/favorite.schema.d.ts +24 -1
  30. package/dist/favorite/favorite.schema.js +34 -1
  31. package/dist/favorite/index.d.ts +2 -2
  32. package/dist/file/file.schema.d.ts +39 -1
  33. package/dist/file/file.schema.js +51 -1
  34. package/dist/file/index.d.ts +1 -1
  35. package/dist/fixtures/contracts-chat-contact.d.ts +5 -5
  36. package/dist/fixtures/contracts-chat-contact.js +1 -1
  37. package/dist/grant.schema.d.ts +16 -1
  38. package/dist/grant.schema.js +29 -1
  39. package/dist/import/index.d.ts +1 -1
  40. package/dist/inbox-notification.schema.d.ts +9 -1
  41. package/dist/inbox-notification.schema.js +16 -1
  42. package/dist/index.d.ts +42 -40
  43. package/dist/index.js +20 -16
  44. package/dist/knowledge/index.d.ts +1 -1
  45. package/dist/knowledge/knowledge-folder.schema.d.ts +7 -1
  46. package/dist/knowledge/knowledge-folder.schema.js +6 -1
  47. package/dist/message.repository.d.ts +20 -20
  48. package/dist/message.schema.d.ts +32 -1
  49. package/dist/message.schema.js +47 -1
  50. package/dist/namespaces.d.ts +178 -1
  51. package/dist/namespaces.js +253 -1
  52. package/dist/profile.d.ts +22 -1
  53. package/dist/profile.js +88 -1
  54. package/dist/profile.repository.d.ts +105 -0
  55. package/dist/profile.repository.js +47 -0
  56. package/dist/profile.schema.d.ts +16 -0
  57. package/dist/{core/profile.js → profile.schema.js} +4 -4
  58. package/dist/repository.d.ts +49 -9
  59. package/dist/repository.js +49 -46
  60. package/dist/schema.d.ts +244 -1
  61. package/dist/schema.js +37 -1
  62. package/dist/session/index.d.ts +1 -1
  63. package/dist/session/index.js +1 -1
  64. package/dist/session/session.schema.d.ts +43 -1
  65. package/dist/session/session.schema.js +46 -1
  66. package/dist/session.repository.d.ts +61 -0
  67. package/dist/session.repository.js +8 -0
  68. package/dist/settings/index.d.ts +1 -1
  69. package/dist/settings/settings.schema.d.ts +49 -1
  70. package/dist/settings/settings.schema.js +63 -1
  71. package/dist/sidecar/persistence-mapping.d.ts +5 -5
  72. package/dist/sidecar/sidecar-events.d.ts +30 -30
  73. package/dist/thread.repository.d.ts +15 -19
  74. package/dist/thread.schema.d.ts +30 -1
  75. package/dist/thread.schema.js +39 -1
  76. package/dist/types/message-block.d.ts +1 -1
  77. package/dist/vocab/_namespaces.d.ts +1 -1
  78. package/dist/vocab/index.d.ts +5 -6
  79. package/dist/vocab/index.js +0 -1
  80. package/dist/vocab/message.vocab.js +1 -1
  81. package/dist/vocab/thread.vocab.d.ts +1 -2
  82. package/dist/vocab/thread.vocab.js +2 -3
  83. package/dist/watch/index.d.ts +226 -0
  84. package/dist/watch/index.js +1156 -0
  85. package/package.json +41 -31
  86. package/dist/_drizzle-solid/columns.d.ts +0 -37
  87. package/dist/_drizzle-solid/columns.js +0 -1
  88. package/dist/_drizzle-solid/pod-table.d.ts +0 -3
  89. package/dist/_drizzle-solid/pod-table.js +0 -1
  90. package/dist/_drizzle-solid/types.d.ts +0 -40
  91. package/dist/_drizzle-solid/types.js +0 -1
  92. package/dist/ai-config.d.ts +0 -1
  93. package/dist/ai-config.js +0 -1
  94. package/dist/chat.utils.d.ts +0 -3
  95. package/dist/chat.utils.js +0 -30
  96. package/dist/core/agent-provider.schema.d.ts +0 -1
  97. package/dist/core/agent-provider.schema.js +0 -1
  98. package/dist/core/agent-status.schema.d.ts +0 -12
  99. package/dist/core/agent-status.schema.js +0 -18
  100. package/dist/core/agent.schema.d.ts +0 -72
  101. package/dist/core/agent.schema.js +0 -38
  102. package/dist/core/ai-config.schema.d.ts +0 -11
  103. package/dist/core/ai-config.schema.js +0 -18
  104. package/dist/core/ai-model.schema.d.ts +0 -15
  105. package/dist/core/ai-model.schema.js +0 -21
  106. package/dist/core/ai-provider.schema.d.ts +0 -16
  107. package/dist/core/ai-provider.schema.js +0 -28
  108. package/dist/core/approval.schema.d.ts +0 -21
  109. package/dist/core/approval.schema.js +0 -33
  110. package/dist/core/audit.schema.d.ts +0 -17
  111. package/dist/core/audit.schema.js +0 -29
  112. package/dist/core/chat.schema.d.ts +0 -36
  113. package/dist/core/chat.schema.js +0 -45
  114. package/dist/core/contact.schema.d.ts +0 -47
  115. package/dist/core/contact.schema.js +0 -59
  116. package/dist/core/credential.schema.d.ts +0 -56
  117. package/dist/core/credential.schema.js +0 -40
  118. package/dist/core/extension/extension.schema.d.ts +0 -4
  119. package/dist/core/extension/extension.schema.js +0 -11
  120. package/dist/core/extension/index.d.ts +0 -1
  121. package/dist/core/extension/index.js +0 -1
  122. package/dist/core/extension.d.ts +0 -1
  123. package/dist/core/extension.js +0 -1
  124. package/dist/core/favorite/favorite.schema.d.ts +0 -24
  125. package/dist/core/favorite/favorite.schema.js +0 -34
  126. package/dist/core/favorite/index.d.ts +0 -1
  127. package/dist/core/favorite/index.js +0 -1
  128. package/dist/core/file/file.schema.d.ts +0 -39
  129. package/dist/core/file/file.schema.js +0 -51
  130. package/dist/core/file/index.d.ts +0 -1
  131. package/dist/core/file/index.js +0 -1
  132. package/dist/core/file.d.ts +0 -1
  133. package/dist/core/file.js +0 -1
  134. package/dist/core/grant.schema.d.ts +0 -16
  135. package/dist/core/grant.schema.js +0 -29
  136. package/dist/core/import/import-job.schema.d.ts +0 -5
  137. package/dist/core/import/import-job.schema.js +0 -5
  138. package/dist/core/import/index.d.ts +0 -1
  139. package/dist/core/import/index.js +0 -1
  140. package/dist/core/import.d.ts +0 -1
  141. package/dist/core/import.js +0 -1
  142. package/dist/core/inbox-notification.schema.d.ts +0 -9
  143. package/dist/core/inbox-notification.schema.js +0 -16
  144. package/dist/core/index.d.ts +0 -31
  145. package/dist/core/index.js +0 -32
  146. package/dist/core/knowledge/index.d.ts +0 -1
  147. package/dist/core/knowledge/index.js +0 -1
  148. package/dist/core/knowledge/knowledge-folder.schema.d.ts +0 -7
  149. package/dist/core/knowledge/knowledge-folder.schema.js +0 -6
  150. package/dist/core/knowledge.d.ts +0 -1
  151. package/dist/core/knowledge.js +0 -1
  152. package/dist/core/message.schema.d.ts +0 -33
  153. package/dist/core/message.schema.js +0 -49
  154. package/dist/core/namespaces.d.ts +0 -176
  155. package/dist/core/namespaces.js +0 -289
  156. package/dist/core/profile.d.ts +0 -16
  157. package/dist/core/schema.d.ts +0 -304
  158. package/dist/core/schema.js +0 -46
  159. package/dist/core/session/index.d.ts +0 -1
  160. package/dist/core/session/index.js +0 -1
  161. package/dist/core/session/session.schema.d.ts +0 -6
  162. package/dist/core/session/session.schema.js +0 -6
  163. package/dist/core/session.d.ts +0 -1
  164. package/dist/core/session.js +0 -1
  165. package/dist/core/settings/index.d.ts +0 -1
  166. package/dist/core/settings/index.js +0 -1
  167. package/dist/core/settings/settings.schema.d.ts +0 -49
  168. package/dist/core/settings/settings.schema.js +0 -63
  169. package/dist/core/settings.d.ts +0 -1
  170. package/dist/core/settings.js +0 -1
  171. package/dist/core/thread.schema.d.ts +0 -28
  172. package/dist/core/thread.schema.js +0 -36
  173. package/dist/core/types/collaboration-blocks.d.ts +0 -52
  174. package/dist/core/types/collaboration-blocks.js +0 -7
  175. package/dist/core/types/message-block.d.ts +0 -270
  176. package/dist/core/types/message-block.js +0 -125
  177. package/dist/core/vector-store.schema.d.ts +0 -25
  178. package/dist/core/vector-store.schema.js +0 -35
  179. package/dist/core/vocab/_namespaces.d.ts +0 -1
  180. package/dist/core/vocab/_namespaces.js +0 -3
  181. package/dist/core/vocab/chat.vocab.d.ts +0 -16
  182. package/dist/core/vocab/chat.vocab.js +0 -22
  183. package/dist/core/vocab/contact.vocab.d.ts +0 -21
  184. package/dist/core/vocab/contact.vocab.js +0 -22
  185. package/dist/core/vocab/index.d.ts +0 -6
  186. package/dist/core/vocab/index.js +0 -6
  187. package/dist/core/vocab/message.vocab.d.ts +0 -20
  188. package/dist/core/vocab/message.vocab.js +0 -24
  189. package/dist/core/vocab/sidecar.vocab.d.ts +0 -46
  190. package/dist/core/vocab/sidecar.vocab.js +0 -47
  191. package/dist/core/vocab/thread.vocab.d.ts +0 -11
  192. package/dist/core/vocab/thread.vocab.js +0 -14
  193. package/dist/core/vocab/workspace.vocab.d.ts +0 -12
  194. package/dist/core/vocab/workspace.vocab.js +0 -13
  195. package/dist/core/vocab.d.ts +0 -1
  196. package/dist/core/vocab.js +0 -1
  197. package/dist/core/workspace.schema.d.ts +0 -35
  198. package/dist/core/workspace.schema.js +0 -106
  199. package/dist/core.d.ts +0 -1
  200. package/dist/core.js +0 -1
  201. package/dist/discovery/vercel.d.ts +0 -25
  202. package/dist/discovery/vercel.js +0 -95
  203. package/dist/discovery.d.ts +0 -1
  204. package/dist/discovery.js +0 -1
  205. package/dist/extension.d.ts +0 -1
  206. package/dist/extension.js +0 -1
  207. package/dist/favorite.d.ts +0 -1
  208. package/dist/favorite.js +0 -1
  209. package/dist/file.d.ts +0 -1
  210. package/dist/file.js +0 -1
  211. package/dist/import.d.ts +0 -1
  212. package/dist/import.js +0 -1
  213. package/dist/knowledge.d.ts +0 -1
  214. package/dist/knowledge.js +0 -1
  215. package/dist/session.d.ts +0 -1
  216. package/dist/session.js +0 -1
  217. package/dist/settings.d.ts +0 -1
  218. package/dist/settings.js +0 -1
  219. package/dist/sidecar/index.d.ts +0 -2
  220. package/dist/sidecar/index.js +0 -2
  221. package/dist/vocab/workspace.vocab.d.ts +0 -12
  222. package/dist/vocab/workspace.vocab.js +0 -13
  223. package/dist/vocab.d.ts +0 -1
  224. package/dist/vocab.js +0 -1
  225. package/dist/workspace.repository.d.ts +0 -45
  226. package/dist/workspace.repository.js +0 -8
  227. package/dist/workspace.schema.d.ts +0 -1
  228. package/dist/workspace.schema.js +0 -1
@@ -1,24 +1,19 @@
1
- export declare const agentRepository: import("./repository.js").PodRepositoryDescriptor<import("@undefineds.co/models/_drizzle-solid/pod-table").PodTableWithColumns<import("@undefineds.co/models/_drizzle-solid/types").ResolvedColumns<{
2
- id: import("@undefineds.co/models/_drizzle-solid/columns").ColumnBuilder<"string", null, true, false>;
3
- name: import("@undefineds.co/models/_drizzle-solid/columns").ColumnBuilder<"string", null, false, false>;
4
- description: import("@undefineds.co/models/_drizzle-solid/columns").ColumnBuilder<"string", null, false, false>;
5
- avatarUrl: import("@undefineds.co/models/_drizzle-solid/columns").ColumnBuilder<"uri", null, false, false>;
6
- instructions: import("@undefineds.co/models/_drizzle-solid/columns").ColumnBuilder<"string", null, false, false>;
7
- provider: import("@undefineds.co/models/_drizzle-solid/columns").ColumnBuilder<"uri", null, false, false>;
8
- runtimeKind: import("@undefineds.co/models/_drizzle-solid/columns").ColumnBuilder<"string", null, false, false>;
9
- credential: import("@undefineds.co/models/_drizzle-solid/columns").ColumnBuilder<"uri", null, false, false>;
10
- model: import("@undefineds.co/models/_drizzle-solid/columns").ColumnBuilder<"uri", null, false, false>;
11
- enabled: import("@undefineds.co/models/_drizzle-solid/columns").ColumnBuilder<"string", null, false, true>;
12
- temperature: import("@undefineds.co/models/_drizzle-solid/columns").ColumnBuilder<"integer", null, false, true>;
13
- tools: import("@undefineds.co/models/_drizzle-solid/columns").ColumnBuilder<"array", "string", false, false>;
14
- contextRound: import("@undefineds.co/models/_drizzle-solid/columns").ColumnBuilder<"integer", null, false, true>;
15
- maxTurns: import("@undefineds.co/models/_drizzle-solid/columns").ColumnBuilder<"integer", null, false, false>;
16
- timeout: import("@undefineds.co/models/_drizzle-solid/columns").ColumnBuilder<"integer", null, false, false>;
17
- ttsModel: import("@undefineds.co/models/_drizzle-solid/columns").ColumnBuilder<"uri", null, false, false>;
18
- videoModel: import("@undefineds.co/models/_drizzle-solid/columns").ColumnBuilder<"uri", null, false, false>;
19
- createdAt: import("@undefineds.co/models/_drizzle-solid/columns").ColumnBuilder<"datetime", null, true, true>;
20
- updatedAt: import("@undefineds.co/models/_drizzle-solid/columns").ColumnBuilder<"datetime", null, true, true>;
21
- deletedAt: import("@undefineds.co/models/_drizzle-solid/columns").ColumnBuilder<"datetime", null, false, false>;
1
+ export declare const agentRepository: import("./repository").PodRepositoryDescriptor<import("@undefineds.co/drizzle-solid/dist/core/schema").PodTableWithColumns<import("@undefineds.co/drizzle-solid/dist/core/schema").ResolvedColumns<{
2
+ id: import("@undefineds.co/drizzle-solid/dist/core/schema").PodStringColumn<false, false>;
3
+ name: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"string", null, true, false>;
4
+ description: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"string", null, false, false>;
5
+ avatarUrl: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"uri", null, false, false>;
6
+ instructions: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"string", null, false, false>;
7
+ provider: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"string", null, false, false>;
8
+ model: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"string", null, false, false>;
9
+ temperature: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"integer", null, false, true>;
10
+ tools: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"array", "string", false, false>;
11
+ contextRound: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"integer", null, false, true>;
12
+ ttsModel: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"string", null, false, false>;
13
+ videoModel: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"string", null, false, false>;
14
+ createdAt: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"datetime", null, true, true>;
15
+ updatedAt: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"datetime", null, true, true>;
16
+ deletedAt: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"datetime", null, false, false>;
22
17
  }>>, {
23
18
  id: string;
24
19
  name: string;
@@ -26,57 +21,42 @@ export declare const agentRepository: import("./repository.js").PodRepositoryDes
26
21
  avatarUrl: string;
27
22
  instructions: string;
28
23
  provider: string;
29
- runtimeKind: string;
30
- credential: string;
31
24
  model: string;
32
- enabled: string;
33
25
  temperature: number;
34
26
  tools: string[];
35
27
  contextRound: number;
36
- maxTurns: number;
37
- timeout: number;
38
28
  ttsModel: string;
39
29
  videoModel: string;
40
30
  createdAt: Date;
41
31
  updatedAt: Date;
42
32
  deletedAt: Date;
43
33
  }, {
44
- id: string;
45
- name?: string | undefined;
34
+ name: string;
35
+ id?: string | undefined;
46
36
  description?: string | undefined;
47
37
  avatarUrl?: string | undefined;
48
38
  instructions?: string | undefined;
49
39
  provider?: string | undefined;
50
- runtimeKind?: string | undefined;
51
- credential?: string | undefined;
52
40
  model?: string | undefined;
53
- enabled?: string | undefined;
54
41
  temperature?: number | undefined;
55
42
  tools?: string[] | undefined;
56
43
  contextRound?: number | undefined;
57
- maxTurns?: number | undefined;
58
- timeout?: number | undefined;
59
44
  ttsModel?: string | undefined;
60
45
  videoModel?: string | undefined;
61
46
  createdAt?: Date | undefined;
62
47
  updatedAt?: Date | undefined;
63
48
  deletedAt?: Date | undefined;
64
49
  }, {
65
- id?: string | undefined;
66
- name?: string | null | undefined;
50
+ id?: string | null | undefined;
51
+ name?: string | undefined;
67
52
  description?: string | null | undefined;
68
53
  avatarUrl?: string | null | undefined;
69
54
  instructions?: string | null | undefined;
70
55
  provider?: string | null | undefined;
71
- runtimeKind?: string | null | undefined;
72
- credential?: string | null | undefined;
73
56
  model?: string | null | undefined;
74
- enabled?: string | null | undefined;
75
57
  temperature?: number | null | undefined;
76
58
  tools?: string[] | null | undefined;
77
59
  contextRound?: number | null | undefined;
78
- maxTurns?: number | null | undefined;
79
- timeout?: number | null | undefined;
80
60
  ttsModel?: string | null | undefined;
81
61
  videoModel?: string | null | undefined;
82
62
  createdAt?: Date | undefined;
@@ -1 +1,20 @@
1
- export { createAgentSchema, agentSchema, agentTable, type AgentRow, type AgentInsert, type AgentUpdate, type CreateAgentSchemaOptions, } from './core.js';
1
+ export declare const agentTable: import("@undefineds.co/drizzle-solid/dist/core/schema").PodTableWithColumns<import("@undefineds.co/drizzle-solid/dist/core/schema").ResolvedColumns<{
2
+ id: import("@undefineds.co/drizzle-solid/dist/core/schema").PodStringColumn<false, false>;
3
+ name: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"string", null, true, false>;
4
+ description: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"string", null, false, false>;
5
+ avatarUrl: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"uri", null, false, false>;
6
+ instructions: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"string", null, false, false>;
7
+ provider: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"string", null, false, false>;
8
+ model: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"string", null, false, false>;
9
+ temperature: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"integer", null, false, true>;
10
+ tools: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"array", "string", false, false>;
11
+ contextRound: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"integer", null, false, true>;
12
+ ttsModel: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"string", null, false, false>;
13
+ videoModel: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"string", null, false, false>;
14
+ createdAt: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"datetime", null, true, true>;
15
+ updatedAt: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"datetime", null, true, true>;
16
+ deletedAt: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"datetime", null, false, false>;
17
+ }>>;
18
+ export type AgentRow = typeof agentTable.$inferSelect;
19
+ export type AgentInsert = typeof agentTable.$inferInsert;
20
+ export type AgentUpdate = typeof agentTable.$inferUpdate;
@@ -1 +1,25 @@
1
- export { createAgentSchema, agentSchema, agentTable, } from './core.js';
1
+ import { podTable, string, integer, timestamp, text, real, uri, id } from "@undefineds.co/drizzle-solid";
2
+ import { UDFS, DCTerms, FOAF, VCARD } from "./namespaces.js";
3
+ export const agentTable = podTable("agent", {
4
+ id: id("id"),
5
+ name: string("name").predicate(FOAF.name).notNull(),
6
+ description: text("description").predicate(DCTerms.description),
7
+ avatarUrl: uri("avatarUrl").predicate(VCARD.hasPhoto),
8
+ instructions: text("instructions").predicate(UDFS.systemMessage),
9
+ provider: string("provider").predicate(UDFS.provider),
10
+ model: string("model").predicate(UDFS.model),
11
+ temperature: real("temperature").predicate(UDFS.temperature).default(0.7),
12
+ tools: text("tools").array().predicate(UDFS.tools),
13
+ contextRound: integer("contextRound").predicate(UDFS.contextRound).default(4),
14
+ ttsModel: string("ttsModel").predicate(UDFS.ttsModel),
15
+ videoModel: string("videoModel").predicate(UDFS.videoModel),
16
+ createdAt: timestamp("createdAt").predicate(DCTerms.created).notNull().defaultNow(),
17
+ updatedAt: timestamp("updatedAt").predicate(DCTerms.modified).notNull().defaultNow(),
18
+ deletedAt: timestamp("deletedAt").predicate(UDFS.deletedAt),
19
+ }, {
20
+ base: '/.data/agents/',
21
+ sparqlEndpoint: '/.data/agents/-/sparql',
22
+ type: FOAF.Agent,
23
+ namespace: UDFS,
24
+ subjectTemplate: '{id}.ttl',
25
+ });
@@ -1,9 +1,10 @@
1
- import type { AIModelInsert, AIModelRow } from '../ai-model.schema.js';
2
- import type { AIProviderInsert, AIProviderRow } from '../ai-provider.schema.js';
3
- import type { CredentialInsert, CredentialRow } from '../credential.schema.js';
1
+ import type { AIModelInsert, AIModelRow } from '../ai-model.schema';
2
+ import type { AIProviderInsert, AIProviderRow } from '../ai-provider.schema';
3
+ import type { CredentialInsert, CredentialRow } from '../credential.schema';
4
4
  export interface AIConfigProviderCatalogEntry {
5
5
  id: string;
6
6
  displayName: string;
7
+ aliases?: string[];
7
8
  defaultBaseUrl?: string;
8
9
  defaultModels?: string[];
9
10
  }
@@ -44,9 +45,10 @@ export interface AIConfigMutationPlan {
44
45
  }
45
46
  export declare function getAIConfigProviderCatalog(): readonly AIConfigProviderCatalogEntry[];
46
47
  export declare function getAIConfigProviderMetadata(providerId: string): AIConfigProviderCatalogEntry;
47
- export declare function extractAIConfigResourceId(raw?: string | null): string;
48
- export declare function extractAIConfigProviderId(raw?: string | null): string;
49
- export declare function sameAIConfigProviderId(left?: string | null, right?: string | null): boolean;
48
+ export declare function normalizeAIConfigResourceId(raw?: string | null): string;
49
+ export declare function normalizeAIConfigProviderId(raw?: string | null): string;
50
+ export declare function sameAIConfigProviderFamily(left?: string | null, right?: string | null): boolean;
51
+ export declare function getAIConfigProviderFamilyIds(providerId: string): string[];
50
52
  export declare function getAIConfigDefaultBaseUrl(providerId: string): string | undefined;
51
53
  export declare function getDefaultAIConfigCredentialId(providerId: string): string;
52
54
  export declare function aiConfigProviderUri(providerId: string): string;
@@ -2,11 +2,13 @@ const AI_CONFIG_PROVIDER_CATALOG = [
2
2
  {
3
3
  id: 'openai',
4
4
  displayName: 'OpenAI',
5
+ aliases: ['codex'],
5
6
  defaultBaseUrl: 'https://api.openai.com/v1',
6
7
  },
7
8
  {
8
9
  id: 'anthropic',
9
10
  displayName: 'Anthropic',
11
+ aliases: ['claude'],
10
12
  defaultBaseUrl: 'https://api.anthropic.com/v1',
11
13
  },
12
14
  {
@@ -27,6 +29,7 @@ const AI_CONFIG_PROVIDER_CATALOG = [
27
29
  {
28
30
  id: 'x-ai',
29
31
  displayName: 'xAI',
32
+ aliases: ['xai'],
30
33
  defaultBaseUrl: 'https://api.x.ai/v1',
31
34
  },
32
35
  {
@@ -83,6 +86,9 @@ function collectKnownProviderIds(catalog) {
83
86
  const ids = new Set();
84
87
  for (const entry of catalog) {
85
88
  ids.add(entry.id);
89
+ for (const alias of entry.aliases ?? []) {
90
+ ids.add(alias);
91
+ }
86
92
  }
87
93
  return ids;
88
94
  }
@@ -96,13 +102,13 @@ export function getAIConfigProviderCatalog() {
96
102
  return AI_CONFIG_PROVIDER_CATALOG;
97
103
  }
98
104
  export function getAIConfigProviderMetadata(providerId) {
99
- const canonicalId = extractAIConfigProviderId(providerId);
105
+ const canonicalId = normalizeAIConfigProviderId(providerId);
100
106
  return AI_CONFIG_PROVIDER_MAP.get(canonicalId) ?? {
101
107
  id: canonicalId,
102
108
  displayName: titleizeProviderId(canonicalId),
103
109
  };
104
110
  }
105
- export function extractAIConfigResourceId(raw) {
111
+ export function normalizeAIConfigResourceId(raw) {
106
112
  if (!raw)
107
113
  return '';
108
114
  if (raw.includes('#'))
@@ -111,25 +117,37 @@ export function extractAIConfigResourceId(raw) {
111
117
  const tail = clean.split('/').pop() || clean;
112
118
  return tail.endsWith('.ttl') ? tail.slice(0, -4) : tail;
113
119
  }
114
- export function extractAIConfigProviderId(raw) {
115
- return normalizeText(extractAIConfigResourceId(raw));
120
+ export function normalizeAIConfigProviderId(raw) {
121
+ const normalized = normalizeText(normalizeAIConfigResourceId(raw));
122
+ if (!normalized)
123
+ return '';
124
+ for (const entry of AI_CONFIG_PROVIDER_CATALOG) {
125
+ if (entry.id === normalized || (entry.aliases ?? []).includes(normalized)) {
126
+ return entry.id;
127
+ }
128
+ }
129
+ return normalized;
116
130
  }
117
- export function sameAIConfigProviderId(left, right) {
118
- const normalizedLeft = extractAIConfigProviderId(left);
119
- const normalizedRight = extractAIConfigProviderId(right);
131
+ export function sameAIConfigProviderFamily(left, right) {
132
+ const normalizedLeft = normalizeAIConfigProviderId(left);
133
+ const normalizedRight = normalizeAIConfigProviderId(right);
120
134
  return Boolean(normalizedLeft) && normalizedLeft === normalizedRight;
121
135
  }
136
+ export function getAIConfigProviderFamilyIds(providerId) {
137
+ const metadata = getAIConfigProviderMetadata(providerId);
138
+ return [metadata.id, ...(metadata.aliases ?? [])];
139
+ }
122
140
  export function getAIConfigDefaultBaseUrl(providerId) {
123
141
  return getAIConfigProviderMetadata(providerId).defaultBaseUrl;
124
142
  }
125
143
  export function getDefaultAIConfigCredentialId(providerId) {
126
- return `${extractAIConfigProviderId(providerId)}-default`;
144
+ return `${normalizeAIConfigProviderId(providerId)}-default`;
127
145
  }
128
146
  export function aiConfigProviderUri(providerId) {
129
- return `/settings/ai/providers.ttl#${extractAIConfigProviderId(providerId)}`;
147
+ return `/settings/ai/providers.ttl#${normalizeAIConfigProviderId(providerId)}`;
130
148
  }
131
149
  export function aiConfigModelUri(modelId) {
132
- return `/settings/ai/models.ttl#${extractAIConfigResourceId(modelId)}`;
150
+ return `/settings/ai/models.ttl#${normalizeAIConfigResourceId(modelId)}`;
133
151
  }
134
152
  export function buildAIConfigProviderStateMap(options) {
135
153
  const catalog = options.catalog ?? AI_CONFIG_PROVIDER_CATALOG;
@@ -138,7 +156,7 @@ export function buildAIConfigProviderStateMap(options) {
138
156
  const knownIds = collectKnownProviderIds(catalog);
139
157
  const providerMap = new Map();
140
158
  for (const row of options.providerRows) {
141
- const providerId = typeof row.id === 'string' ? row.id : '';
159
+ const providerId = normalizeAIConfigProviderId(String(row.id ?? row['@id'] ?? ''));
142
160
  if (!providerId)
143
161
  continue;
144
162
  const previous = providerMap.get(providerId) ?? {};
@@ -146,7 +164,7 @@ export function buildAIConfigProviderStateMap(options) {
146
164
  }
147
165
  const credentialMap = new Map();
148
166
  for (const row of options.credentialRows) {
149
- const providerId = extractAIConfigProviderId(typeof row.provider === 'string' ? row.provider : '');
167
+ const providerId = normalizeAIConfigProviderId(String(row.provider ?? row.id ?? ''));
150
168
  if (!providerId)
151
169
  continue;
152
170
  const previous = credentialMap.get(providerId) ?? {};
@@ -154,10 +172,10 @@ export function buildAIConfigProviderStateMap(options) {
154
172
  }
155
173
  const modelMap = new Map();
156
174
  for (const row of options.modelRows) {
157
- const providerId = extractAIConfigProviderId(typeof row.isProvidedBy === 'string' ? row.isProvidedBy : '');
175
+ const providerId = normalizeAIConfigProviderId(String(row.isProvidedBy ?? ''));
158
176
  if (!providerId)
159
177
  continue;
160
- const modelId = typeof row.id === 'string' ? row.id : '';
178
+ const modelId = normalizeAIConfigResourceId(String(row.id ?? row['@id'] ?? ''));
161
179
  if (!modelId)
162
180
  continue;
163
181
  const list = modelMap.get(providerId) ?? [];
@@ -195,7 +213,7 @@ export function buildAIConfigProviderStateMap(options) {
195
213
  enabled: true,
196
214
  capabilities: [],
197
215
  }));
198
- const selectedModelId = extractAIConfigResourceId(typeof providerRow?.hasModel === 'string' ? providerRow.hasModel : '') || preferredSelectedModelId(models);
216
+ const selectedModelId = normalizeAIConfigResourceId(typeof providerRow?.hasModel === 'string' ? providerRow.hasModel : '') || preferredSelectedModelId(models);
199
217
  states[providerId] = {
200
218
  id: providerId,
201
219
  enabled: (typeof credentialRow?.status === 'string' ? credentialRow.status : 'inactive') === 'active',
@@ -210,11 +228,11 @@ export function buildAIConfigProviderStateMap(options) {
210
228
  return states;
211
229
  }
212
230
  export function buildAIConfigMutationPlan(input) {
213
- const providerId = extractAIConfigProviderId(input.providerId);
231
+ const providerId = normalizeAIConfigProviderId(input.providerId);
214
232
  const metadata = getAIConfigProviderMetadata(providerId);
215
- const existingProvider = input.currentProviderRows.find((row) => row.id === providerId);
216
- const existingCredential = input.currentCredentialRows.find((row) => sameAIConfigProviderId(typeof row.provider === 'string' ? row.provider : '', providerId));
217
- const existingModels = input.currentModelRows.filter((row) => sameAIConfigProviderId(typeof row.isProvidedBy === 'string' ? row.isProvidedBy : '', providerId));
233
+ const existingProvider = input.currentProviderRows.find((row) => sameAIConfigProviderFamily(String(row.id ?? row['@id'] ?? ''), providerId));
234
+ const existingCredential = input.currentCredentialRows.find((row) => sameAIConfigProviderFamily(String(row.provider ?? row.id ?? ''), providerId));
235
+ const existingModels = input.currentModelRows.filter((row) => sameAIConfigProviderFamily(String(row.isProvidedBy ?? ''), providerId));
218
236
  const hasConfigUpdate = input.updates.enabled !== undefined || input.updates.apiKey !== undefined || input.updates.baseUrl !== undefined;
219
237
  let providerPayload;
220
238
  let credentialPayload;
@@ -223,7 +241,7 @@ export function buildAIConfigMutationPlan(input) {
223
241
  if (hasConfigUpdate || input.updates.models !== undefined) {
224
242
  const selectedModelId = input.updates.models
225
243
  ? preferredSelectedModelId(input.updates.models)
226
- : extractAIConfigResourceId(typeof existingProvider?.hasModel === 'string' ? existingProvider.hasModel : '');
244
+ : normalizeAIConfigResourceId(typeof existingProvider?.hasModel === 'string' ? existingProvider.hasModel : '');
227
245
  providerPayload = {
228
246
  id: providerId,
229
247
  baseUrl: input.updates.baseUrl ??
@@ -235,7 +253,7 @@ export function buildAIConfigMutationPlan(input) {
235
253
  }
236
254
  if (hasConfigUpdate) {
237
255
  credentialPayload = {
238
- id: (typeof existingCredential?.id === 'string' ? existingCredential.id : '') ||
256
+ id: normalizeAIConfigResourceId(typeof existingCredential?.id === 'string' ? existingCredential.id : '') ||
239
257
  getDefaultAIConfigCredentialId(providerId),
240
258
  provider: aiConfigProviderUri(providerId),
241
259
  service: typeof existingCredential?.service === 'string' && existingCredential.service ? existingCredential.service : 'ai',
@@ -257,12 +275,12 @@ export function buildAIConfigMutationPlan(input) {
257
275
  }
258
276
  if (input.updates.models !== undefined) {
259
277
  const existingById = new Map(existingModels.map((row) => [
260
- typeof row.id === 'string' ? row.id : '',
278
+ normalizeAIConfigResourceId(String(row.id ?? row['@id'] ?? '')),
261
279
  row,
262
280
  ]));
263
281
  const nextIds = new Set();
264
282
  for (const model of input.updates.models) {
265
- const modelId = extractAIConfigResourceId(model.id);
283
+ const modelId = normalizeAIConfigResourceId(model.id);
266
284
  if (!modelId)
267
285
  continue;
268
286
  nextIds.add(modelId);
@@ -1 +1,13 @@
1
- export { aiModelTable, type AIModelRow, type AIModelInsert, type AIModelUpdate, } from './core.js';
1
+ export declare const aiModelTable: import("@undefineds.co/drizzle-solid/dist/core/schema").PodTableWithColumns<import("@undefineds.co/drizzle-solid/dist/core/schema").ResolvedColumns<{
2
+ id: import("@undefineds.co/drizzle-solid/dist/core/schema").PodStringColumn<false, false>;
3
+ displayName: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"string", null, false, false>;
4
+ modelType: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"string", null, false, true>;
5
+ isProvidedBy: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"uri", null, false, false>;
6
+ dimension: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"integer", null, false, false>;
7
+ status: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"string", null, false, true>;
8
+ createdAt: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"datetime", null, true, true>;
9
+ updatedAt: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"datetime", null, true, true>;
10
+ }>>;
11
+ export type AIModelRow = typeof aiModelTable.$inferSelect;
12
+ export type AIModelInsert = typeof aiModelTable.$inferInsert;
13
+ export type AIModelUpdate = typeof aiModelTable.$inferUpdate;
@@ -1 +1,17 @@
1
- export { aiModelTable, } from './core.js';
1
+ import { id, integer, podTable, string, timestamp, uri } from "@undefineds.co/drizzle-solid";
2
+ import { XPOD_AI } from "./namespaces.js";
3
+ export const aiModelTable = podTable("aiModel", {
4
+ id: id("id"),
5
+ displayName: string("displayName").predicate(XPOD_AI.displayName),
6
+ modelType: string("modelType").predicate(XPOD_AI.modelType).default("chat"),
7
+ isProvidedBy: uri("isProvidedBy").predicate(XPOD_AI.isProvidedBy),
8
+ dimension: integer("dimension").predicate(XPOD_AI.dimension),
9
+ status: string("status").predicate(XPOD_AI.status).default("active"),
10
+ createdAt: timestamp("createdAt").predicate(XPOD_AI.createdAt).notNull().defaultNow(),
11
+ updatedAt: timestamp("updatedAt").predicate(XPOD_AI.updatedAt).notNull().defaultNow(),
12
+ }, {
13
+ base: "/settings/ai/models.ttl",
14
+ type: XPOD_AI.Model,
15
+ namespace: XPOD_AI,
16
+ subjectTemplate: "#{id}",
17
+ });
@@ -1 +1,9 @@
1
- export { aiProviderTable, aiProviderRelations, type AIProviderRow, type AIProviderInsert, type AIProviderUpdate, } from './core.js';
1
+ export declare const aiProviderTable: import("@undefineds.co/drizzle-solid/dist/core/schema").PodTableWithColumns<import("@undefineds.co/drizzle-solid/dist/core/schema").ResolvedColumns<{
2
+ id: import("@undefineds.co/drizzle-solid/dist/core/schema").PodStringColumn<false, false>;
3
+ baseUrl: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"string", null, false, false>;
4
+ proxyUrl: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"string", null, false, false>;
5
+ hasModel: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"uri", null, false, false>;
6
+ }>>;
7
+ export type AIProviderRow = typeof aiProviderTable.$inferSelect;
8
+ export type AIProviderInsert = typeof aiProviderTable.$inferInsert;
9
+ export type AIProviderUpdate = typeof aiProviderTable.$inferUpdate;
@@ -1 +1,13 @@
1
- export { aiProviderTable, aiProviderRelations, } from './core.js';
1
+ import { id, podTable, string, uri } from "@undefineds.co/drizzle-solid";
2
+ import { XPOD_AI } from "./namespaces.js";
3
+ export const aiProviderTable = podTable("aiProvider", {
4
+ id: id("id"),
5
+ baseUrl: string("baseUrl").predicate(XPOD_AI.baseUrl),
6
+ proxyUrl: string("proxyUrl").predicate(XPOD_AI.proxyUrl),
7
+ hasModel: uri("hasModel").predicate(XPOD_AI.hasModel),
8
+ }, {
9
+ base: "/settings/ai/providers.ttl",
10
+ type: XPOD_AI.Provider,
11
+ namespace: XPOD_AI,
12
+ subjectTemplate: "#{id}",
13
+ });
@@ -1 +1,21 @@
1
- export { approvalTable, type ApprovalRow, type ApprovalInsert, type ApprovalUpdate, } from './core.js';
1
+ export declare const approvalTable: import("@undefineds.co/drizzle-solid/dist/core/schema").PodTableWithColumns<import("@undefineds.co/drizzle-solid/dist/core/schema").ResolvedColumns<{
2
+ id: import("@undefineds.co/drizzle-solid/dist/core/schema").PodStringColumn<false, false>;
3
+ session: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"uri", null, true, false>;
4
+ toolCallId: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"string", null, true, false>;
5
+ toolName: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"string", null, true, false>;
6
+ target: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"uri", null, true, false>;
7
+ action: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"uri", null, true, false>;
8
+ risk: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"string", null, true, false>;
9
+ status: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"string", null, true, true>;
10
+ assignedTo: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"uri", null, false, false>;
11
+ decisionBy: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"uri", null, false, false>;
12
+ decisionRole: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"string", null, false, false>;
13
+ onBehalfOf: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"uri", null, false, false>;
14
+ reason: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"string", null, false, false>;
15
+ policyVersion: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"string", null, false, false>;
16
+ createdAt: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"datetime", null, true, true>;
17
+ resolvedAt: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"datetime", null, false, false>;
18
+ }>>;
19
+ export type ApprovalRow = typeof approvalTable.$inferSelect;
20
+ export type ApprovalInsert = typeof approvalTable.$inferInsert;
21
+ export type ApprovalUpdate = typeof approvalTable.$inferUpdate;
@@ -1 +1,33 @@
1
- export { approvalTable, } from './core.js';
1
+ import { podTable, uri, string, text, timestamp, id } from '@undefineds.co/drizzle-solid';
2
+ import { ODRL, UDFS, DCTerms } from './namespaces.js';
3
+ // Approval request domain store (separate from Solid inbox notifications)
4
+ export const approvalTable = podTable('approval', {
5
+ id: id('id'),
6
+ // Relations
7
+ session: uri('session').predicate(UDFS.session).notNull(),
8
+ toolCallId: string('toolCallId').predicate(UDFS.toolCallId).notNull(),
9
+ // Request details
10
+ toolName: string('toolName').predicate(UDFS.toolName).notNull(),
11
+ // Standard-ish policy surface for action on target (derived by the bridge).
12
+ // NOTE: These MUST be Pod URIs / vocab URIs, not runtime-local identifiers.
13
+ target: uri('target').predicate(ODRL.target).notNull(),
14
+ action: uri('action').predicate(ODRL.action).notNull(),
15
+ risk: string('risk').predicate(UDFS.risk).notNull(),
16
+ status: string('status').predicate(UDFS.status).notNull().default('pending'),
17
+ // Decision identity (WebID semantics)
18
+ assignedTo: uri('assignedTo').predicate(UDFS.assignedTo),
19
+ decisionBy: uri('decisionBy').predicate(UDFS.decisionBy),
20
+ decisionRole: string('decisionRole').predicate(UDFS.decisionRole),
21
+ onBehalfOf: uri('onBehalfOf').predicate(UDFS.onBehalfOf),
22
+ reason: text('reason').predicate(UDFS.reason),
23
+ policyVersion: string('policyVersion').predicate(UDFS.policyVersion),
24
+ // Timestamps
25
+ createdAt: timestamp('createdAt').predicate(DCTerms.created).notNull().defaultNow(),
26
+ resolvedAt: timestamp('resolvedAt').predicate(UDFS.resolvedAt),
27
+ }, {
28
+ base: '/.data/approvals/',
29
+ sparqlEndpoint: '/.data/approvals/-/sparql',
30
+ type: UDFS.ApprovalRequest,
31
+ namespace: UDFS,
32
+ subjectTemplate: '{id}.ttl',
33
+ });
@@ -1 +1,17 @@
1
- export { auditTable, type AuditRow, type AuditInsert, type AuditUpdate, } from './core.js';
1
+ export declare const auditTable: import("@undefineds.co/drizzle-solid/dist/core/schema").PodTableWithColumns<import("@undefineds.co/drizzle-solid/dist/core/schema").ResolvedColumns<{
2
+ id: import("@undefineds.co/drizzle-solid/dist/core/schema").PodStringColumn<false, false>;
3
+ action: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"string", null, true, false>;
4
+ actor: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"uri", null, true, false>;
5
+ actorRole: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"string", null, true, false>;
6
+ onBehalfOf: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"uri", null, false, false>;
7
+ session: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"uri", null, false, false>;
8
+ toolCallId: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"string", null, false, false>;
9
+ approval: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"uri", null, false, false>;
10
+ context: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"string", null, false, false>;
11
+ policy: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"uri", null, false, false>;
12
+ policyVersion: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"string", null, false, false>;
13
+ createdAt: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"datetime", null, true, true>;
14
+ }>>;
15
+ export type AuditRow = typeof auditTable.$inferSelect;
16
+ export type AuditInsert = typeof auditTable.$inferInsert;
17
+ export type AuditUpdate = typeof auditTable.$inferUpdate;
@@ -1 +1,29 @@
1
- export { auditTable, } from './core.js';
1
+ import { podTable, uri, string, text, timestamp, id } from '@undefineds.co/drizzle-solid';
2
+ import { UDFS, DCTerms } from './namespaces.js';
3
+ // Append-only audit log (separate from Solid inbox notifications)
4
+ export const auditTable = podTable('audit', {
5
+ id: id('id'),
6
+ // Audit action
7
+ action: string('action').predicate(UDFS.action).notNull(),
8
+ // Actor identity (WebID semantics)
9
+ actor: uri('actor').predicate(UDFS.actor).notNull(),
10
+ actorRole: string('actorRole').predicate(UDFS.actorRole).notNull(),
11
+ onBehalfOf: uri('onBehalfOf').predicate(UDFS.onBehalfOf),
12
+ // Relations
13
+ session: uri('session').predicate(UDFS.session),
14
+ toolCallId: string('toolCallId').predicate(UDFS.toolCallId),
15
+ approval: uri('approval').predicate(UDFS.approval),
16
+ // JSON payload with policy/reasoning snapshot
17
+ context: text('context').predicate(UDFS.context),
18
+ // Policy metadata
19
+ policy: uri('policy').predicate(UDFS.policy),
20
+ policyVersion: string('policyVersion').predicate(UDFS.policyVersion),
21
+ // Timestamps
22
+ createdAt: timestamp('createdAt').predicate(DCTerms.created).notNull().defaultNow(),
23
+ }, {
24
+ base: '/.data/audit/',
25
+ sparqlEndpoint: '/.data/audit/-/sparql',
26
+ type: UDFS.AuditEntry,
27
+ namespace: UDFS,
28
+ subjectTemplate: '{id}.ttl',
29
+ });
@@ -1,18 +1,19 @@
1
- export declare const chatRepository: import("./repository.js").PodRepositoryDescriptor<import("@undefineds.co/models/_drizzle-solid/pod-table").PodTableWithColumns<import("@undefineds.co/models/_drizzle-solid/types").ResolvedColumns<{
2
- id: import("@undefineds.co/models/_drizzle-solid/columns").PodStringColumn<false, false>;
3
- title: import("@undefineds.co/models/_drizzle-solid/columns").ColumnBuilder<"string", null, true, false>;
4
- description: import("@undefineds.co/models/_drizzle-solid/columns").ColumnBuilder<"string", null, false, false>;
5
- avatarUrl: import("@undefineds.co/models/_drizzle-solid/columns").ColumnBuilder<"uri", null, false, false>;
6
- starred: import("@undefineds.co/models/_drizzle-solid/columns").ColumnBuilder<"boolean", null, false, true>;
7
- muted: import("@undefineds.co/models/_drizzle-solid/columns").ColumnBuilder<"boolean", null, false, true>;
8
- unreadCount: import("@undefineds.co/models/_drizzle-solid/columns").ColumnBuilder<"integer", null, false, true>;
9
- participants: import("@undefineds.co/models/_drizzle-solid/columns").ColumnBuilder<"array", "uri", false, false>;
10
- metadata: import("@undefineds.co/models/_drizzle-solid/columns").ColumnBuilder<"object", null, false, false>;
11
- lastActiveAt: import("@undefineds.co/models/_drizzle-solid/columns").ColumnBuilder<"datetime", null, false, false>;
12
- lastMessageId: import("@undefineds.co/models/_drizzle-solid/columns").ColumnBuilder<"uri", null, false, false>;
13
- lastMessagePreview: import("@undefineds.co/models/_drizzle-solid/columns").ColumnBuilder<"string", null, false, false>;
14
- createdAt: import("@undefineds.co/models/_drizzle-solid/columns").ColumnBuilder<"datetime", null, true, true>;
15
- updatedAt: import("@undefineds.co/models/_drizzle-solid/columns").ColumnBuilder<"datetime", null, true, true>;
1
+ export declare const chatRepository: import("./repository").PodRepositoryDescriptor<import("@undefineds.co/drizzle-solid/dist/core/schema").PodTableWithColumns<import("@undefineds.co/drizzle-solid/dist/core/schema").ResolvedColumns<{
2
+ id: import("@undefineds.co/drizzle-solid/dist/core/schema").PodStringColumn<false, false>;
3
+ title: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"string", null, true, false>;
4
+ description: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"string", null, false, false>;
5
+ avatarUrl: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"uri", null, false, false>;
6
+ starred: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"boolean", null, false, true>;
7
+ muted: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"boolean", null, false, true>;
8
+ unreadCount: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"integer", null, false, true>;
9
+ contact: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"uri", null, false, false>;
10
+ participants: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"array", "uri", false, false>;
11
+ metadata: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"object", null, false, false>;
12
+ lastActiveAt: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"datetime", null, false, false>;
13
+ lastMessageId: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"uri", null, false, false>;
14
+ lastMessagePreview: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"string", null, false, false>;
15
+ createdAt: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"datetime", null, true, true>;
16
+ updatedAt: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"datetime", null, true, true>;
16
17
  }>>, {
17
18
  id: string;
18
19
  title: string;
@@ -21,6 +22,7 @@ export declare const chatRepository: import("./repository.js").PodRepositoryDesc
21
22
  starred: boolean;
22
23
  muted: boolean;
23
24
  unreadCount: number;
25
+ contact: string;
24
26
  participants: string[];
25
27
  metadata: Record<string, unknown>;
26
28
  lastActiveAt: Date;
@@ -36,6 +38,7 @@ export declare const chatRepository: import("./repository.js").PodRepositoryDesc
36
38
  starred?: boolean | undefined;
37
39
  muted?: boolean | undefined;
38
40
  unreadCount?: number | undefined;
41
+ contact?: string | undefined;
39
42
  participants?: string[] | undefined;
40
43
  metadata?: Record<string, unknown> | undefined;
41
44
  lastActiveAt?: Date | undefined;
@@ -51,6 +54,7 @@ export declare const chatRepository: import("./repository.js").PodRepositoryDesc
51
54
  starred?: boolean | null | undefined;
52
55
  muted?: boolean | null | undefined;
53
56
  unreadCount?: number | null | undefined;
57
+ contact?: string | null | undefined;
54
58
  participants?: string[] | null | undefined;
55
59
  metadata?: Record<string, unknown> | null | undefined;
56
60
  lastActiveAt?: Date | null | undefined;