@undefineds.co/models 0.2.0 → 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.
- package/README.md +515 -125
- package/dist/agent.repository.d.ts +20 -40
- package/dist/agent.schema.d.ts +20 -1
- package/dist/agent.schema.js +25 -1
- package/dist/ai-config/index.d.ts +8 -6
- package/dist/ai-config/index.js +41 -23
- package/dist/ai-model.schema.d.ts +13 -1
- package/dist/ai-model.schema.js +17 -1
- package/dist/ai-provider.schema.d.ts +9 -1
- package/dist/ai-provider.schema.js +13 -1
- package/dist/approval.schema.d.ts +21 -1
- package/dist/approval.schema.js +33 -1
- package/dist/audit.schema.d.ts +17 -1
- package/dist/audit.schema.js +29 -1
- package/dist/chat.repository.d.ts +19 -15
- package/dist/chat.schema.d.ts +37 -1
- package/dist/chat.schema.js +47 -1
- package/dist/client/index.d.ts +121 -0
- package/dist/client/index.js +299 -0
- package/dist/contact.repository.d.ts +21 -21
- package/dist/contact.schema.d.ts +48 -1
- package/dist/contact.schema.js +60 -1
- package/dist/credential.schema.d.ts +15 -1
- package/dist/credential.schema.js +19 -1
- package/dist/discovery/index.d.ts +2 -2
- package/dist/discovery/index.js +2 -2
- package/dist/extension/extension.schema.d.ts +4 -1
- package/dist/extension/extension.schema.js +11 -1
- package/dist/extension/index.d.ts +1 -1
- package/dist/favorite/favorite.schema.d.ts +24 -1
- package/dist/favorite/favorite.schema.js +34 -1
- package/dist/favorite/index.d.ts +2 -2
- package/dist/file/file.schema.d.ts +39 -1
- package/dist/file/file.schema.js +51 -1
- package/dist/file/index.d.ts +1 -1
- package/dist/fixtures/contracts-chat-contact.d.ts +8 -8
- package/dist/fixtures/contracts-chat-contact.js +5 -9
- package/dist/grant.schema.d.ts +16 -1
- package/dist/grant.schema.js +29 -1
- package/dist/import/index.d.ts +1 -1
- package/dist/inbox-notification.schema.d.ts +9 -1
- package/dist/inbox-notification.schema.js +16 -1
- package/dist/index.d.ts +42 -43
- package/dist/index.js +27 -26
- package/dist/knowledge/index.d.ts +1 -1
- package/dist/knowledge/knowledge-folder.schema.d.ts +7 -1
- package/dist/knowledge/knowledge-folder.schema.js +6 -1
- package/dist/message.repository.d.ts +20 -20
- package/dist/message.schema.d.ts +32 -1
- package/dist/message.schema.js +47 -1
- package/dist/namespaces.d.ts +178 -1
- package/dist/namespaces.js +253 -1
- package/dist/profile.d.ts +22 -1
- package/dist/profile.js +88 -1
- package/dist/profile.repository.d.ts +105 -0
- package/dist/profile.repository.js +47 -0
- package/dist/profile.schema.d.ts +16 -0
- package/dist/{core/profile.js → profile.schema.js} +4 -4
- package/dist/repository.d.ts +49 -9
- package/dist/repository.js +49 -46
- package/dist/schema.d.ts +244 -1
- package/dist/schema.js +37 -1
- package/dist/session/index.d.ts +1 -1
- package/dist/session/index.js +1 -1
- package/dist/session/session.schema.d.ts +43 -1
- package/dist/session/session.schema.js +46 -1
- package/dist/session.repository.d.ts +61 -0
- package/dist/session.repository.js +8 -0
- package/dist/settings/index.d.ts +1 -1
- package/dist/settings/settings.schema.d.ts +49 -1
- package/dist/settings/settings.schema.js +63 -1
- package/dist/{governance/runtime-projections.d.ts → sidecar/persistence-mapping.d.ts} +7 -7
- package/dist/{governance/runtime-projections.js → sidecar/persistence-mapping.js} +7 -1
- package/dist/{protocols/runtime-events.d.ts → sidecar/sidecar-events.d.ts} +35 -35
- package/dist/{protocols/runtime-events.js → sidecar/sidecar-events.js} +21 -4
- package/dist/thread.repository.d.ts +15 -19
- package/dist/thread.schema.d.ts +30 -1
- package/dist/thread.schema.js +39 -1
- package/dist/{core/types/collaboration-rich-content.d.ts → types/collaboration-blocks.d.ts} +7 -7
- package/dist/types/collaboration-blocks.js +7 -0
- package/dist/types/message-block.d.ts +270 -0
- package/dist/types/message-block.js +125 -0
- package/dist/vocab/_namespaces.d.ts +1 -1
- package/dist/vocab/index.d.ts +5 -6
- package/dist/vocab/index.js +0 -1
- package/dist/vocab/message.vocab.js +1 -1
- package/dist/vocab/thread.vocab.d.ts +1 -2
- package/dist/vocab/thread.vocab.js +2 -3
- package/dist/watch/index.d.ts +226 -0
- package/dist/watch/index.js +1156 -0
- package/package.json +41 -39
- package/dist/_drizzle-solid/columns.d.ts +0 -37
- package/dist/_drizzle-solid/columns.js +0 -1
- package/dist/_drizzle-solid/pod-table.d.ts +0 -3
- package/dist/_drizzle-solid/pod-table.js +0 -1
- package/dist/_drizzle-solid/types.d.ts +0 -40
- package/dist/_drizzle-solid/types.js +0 -1
- package/dist/ai-config.d.ts +0 -1
- package/dist/ai-config.js +0 -1
- package/dist/chat.utils.d.ts +0 -3
- package/dist/chat.utils.js +0 -30
- package/dist/core/agent-provider.schema.d.ts +0 -1
- package/dist/core/agent-provider.schema.js +0 -1
- package/dist/core/agent-status.schema.d.ts +0 -12
- package/dist/core/agent-status.schema.js +0 -18
- package/dist/core/agent.schema.d.ts +0 -72
- package/dist/core/agent.schema.js +0 -38
- package/dist/core/ai-config.schema.d.ts +0 -11
- package/dist/core/ai-config.schema.js +0 -18
- package/dist/core/ai-model.schema.d.ts +0 -15
- package/dist/core/ai-model.schema.js +0 -21
- package/dist/core/ai-provider.schema.d.ts +0 -16
- package/dist/core/ai-provider.schema.js +0 -28
- package/dist/core/approval.schema.d.ts +0 -21
- package/dist/core/approval.schema.js +0 -33
- package/dist/core/audit.schema.d.ts +0 -17
- package/dist/core/audit.schema.js +0 -29
- package/dist/core/chat.schema.d.ts +0 -36
- package/dist/core/chat.schema.js +0 -45
- package/dist/core/contact.schema.d.ts +0 -47
- package/dist/core/contact.schema.js +0 -59
- package/dist/core/credential.schema.d.ts +0 -56
- package/dist/core/credential.schema.js +0 -40
- package/dist/core/extension/extension.schema.d.ts +0 -4
- package/dist/core/extension/extension.schema.js +0 -11
- package/dist/core/extension/index.d.ts +0 -1
- package/dist/core/extension/index.js +0 -1
- package/dist/core/extension.d.ts +0 -1
- package/dist/core/extension.js +0 -1
- package/dist/core/favorite/favorite.schema.d.ts +0 -24
- package/dist/core/favorite/favorite.schema.js +0 -34
- package/dist/core/favorite/index.d.ts +0 -1
- package/dist/core/favorite/index.js +0 -1
- package/dist/core/file/file.schema.d.ts +0 -39
- package/dist/core/file/file.schema.js +0 -51
- package/dist/core/file/index.d.ts +0 -1
- package/dist/core/file/index.js +0 -1
- package/dist/core/file.d.ts +0 -1
- package/dist/core/file.js +0 -1
- package/dist/core/grant.schema.d.ts +0 -16
- package/dist/core/grant.schema.js +0 -29
- package/dist/core/import/import-job.schema.d.ts +0 -5
- package/dist/core/import/import-job.schema.js +0 -5
- package/dist/core/import/index.d.ts +0 -1
- package/dist/core/import/index.js +0 -1
- package/dist/core/import.d.ts +0 -1
- package/dist/core/import.js +0 -1
- package/dist/core/inbox-notification.schema.d.ts +0 -9
- package/dist/core/inbox-notification.schema.js +0 -16
- package/dist/core/index.d.ts +0 -31
- package/dist/core/index.js +0 -32
- package/dist/core/knowledge/index.d.ts +0 -1
- package/dist/core/knowledge/index.js +0 -1
- package/dist/core/knowledge/knowledge-folder.schema.d.ts +0 -7
- package/dist/core/knowledge/knowledge-folder.schema.js +0 -6
- package/dist/core/knowledge.d.ts +0 -1
- package/dist/core/knowledge.js +0 -1
- package/dist/core/message.schema.d.ts +0 -33
- package/dist/core/message.schema.js +0 -49
- package/dist/core/namespaces.d.ts +0 -176
- package/dist/core/namespaces.js +0 -289
- package/dist/core/profile.d.ts +0 -16
- package/dist/core/schema.d.ts +0 -304
- package/dist/core/schema.js +0 -46
- package/dist/core/session/index.d.ts +0 -1
- package/dist/core/session/index.js +0 -1
- package/dist/core/session/session.schema.d.ts +0 -6
- package/dist/core/session/session.schema.js +0 -6
- package/dist/core/session.d.ts +0 -1
- package/dist/core/session.js +0 -1
- package/dist/core/settings/index.d.ts +0 -1
- package/dist/core/settings/index.js +0 -1
- package/dist/core/settings/settings.schema.d.ts +0 -49
- package/dist/core/settings/settings.schema.js +0 -63
- package/dist/core/settings.d.ts +0 -1
- package/dist/core/settings.js +0 -1
- package/dist/core/thread.schema.d.ts +0 -28
- package/dist/core/thread.schema.js +0 -36
- package/dist/core/types/collaboration-rich-content.js +0 -7
- package/dist/core/types/message-rich-content.d.ts +0 -121
- package/dist/core/types/message-rich-content.js +0 -85
- package/dist/core/vector-store.schema.d.ts +0 -25
- package/dist/core/vector-store.schema.js +0 -35
- package/dist/core/vocab/_namespaces.d.ts +0 -1
- package/dist/core/vocab/_namespaces.js +0 -3
- package/dist/core/vocab/chat.vocab.d.ts +0 -16
- package/dist/core/vocab/chat.vocab.js +0 -22
- package/dist/core/vocab/contact.vocab.d.ts +0 -21
- package/dist/core/vocab/contact.vocab.js +0 -22
- package/dist/core/vocab/index.d.ts +0 -6
- package/dist/core/vocab/index.js +0 -6
- package/dist/core/vocab/message.vocab.d.ts +0 -20
- package/dist/core/vocab/message.vocab.js +0 -24
- package/dist/core/vocab/thread.vocab.d.ts +0 -11
- package/dist/core/vocab/thread.vocab.js +0 -14
- package/dist/core/vocab/workspace.vocab.d.ts +0 -12
- package/dist/core/vocab/workspace.vocab.js +0 -13
- package/dist/core/vocab.d.ts +0 -1
- package/dist/core/vocab.js +0 -1
- package/dist/core/workspace.schema.d.ts +0 -35
- package/dist/core/workspace.schema.js +0 -106
- package/dist/core.d.ts +0 -1
- package/dist/core.js +0 -1
- package/dist/discovery/vercel.d.ts +0 -25
- package/dist/discovery/vercel.js +0 -95
- package/dist/discovery.d.ts +0 -1
- package/dist/discovery.js +0 -1
- package/dist/extension.d.ts +0 -1
- package/dist/extension.js +0 -1
- package/dist/favorite.d.ts +0 -1
- package/dist/favorite.js +0 -1
- package/dist/file.d.ts +0 -1
- package/dist/file.js +0 -1
- package/dist/governance/index.d.ts +0 -1
- package/dist/governance/index.js +0 -1
- package/dist/import.d.ts +0 -1
- package/dist/import.js +0 -1
- package/dist/knowledge.d.ts +0 -1
- package/dist/knowledge.js +0 -1
- package/dist/protocols/index.d.ts +0 -1
- package/dist/protocols/index.js +0 -1
- package/dist/session.d.ts +0 -1
- package/dist/session.js +0 -1
- package/dist/settings.d.ts +0 -1
- package/dist/settings.js +0 -1
- package/dist/types/collaboration-rich-content.d.ts +0 -52
- package/dist/types/collaboration-rich-content.js +0 -7
- package/dist/types/message-rich-content.d.ts +0 -121
- package/dist/types/message-rich-content.js +0 -85
- package/dist/vocab/governance.vocab.d.ts +0 -46
- package/dist/vocab/governance.vocab.js +0 -47
- package/dist/vocab/workspace.vocab.d.ts +0 -12
- package/dist/vocab/workspace.vocab.js +0 -13
- package/dist/vocab.d.ts +0 -1
- package/dist/vocab.js +0 -1
- package/dist/workspace.repository.d.ts +0 -45
- package/dist/workspace.repository.js +0 -8
- package/dist/workspace.schema.d.ts +0 -1
- package/dist/workspace.schema.js +0 -1
- /package/dist/{core/vocab/governance.vocab.d.ts → vocab/sidecar.vocab.d.ts} +0 -0
- /package/dist/{core/vocab/governance.vocab.js → vocab/sidecar.vocab.js} +0 -0
|
@@ -1,24 +1,19 @@
|
|
|
1
|
-
export declare const agentRepository: import("./repository
|
|
2
|
-
id: import("@undefineds.co/
|
|
3
|
-
name: import("@undefineds.co/
|
|
4
|
-
description: import("@undefineds.co/
|
|
5
|
-
avatarUrl: import("@undefineds.co/
|
|
6
|
-
instructions: import("@undefineds.co/
|
|
7
|
-
provider: import("@undefineds.co/
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
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
|
-
|
|
45
|
-
|
|
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 |
|
|
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;
|
package/dist/agent.schema.d.ts
CHANGED
|
@@ -1 +1,20 @@
|
|
|
1
|
-
export
|
|
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;
|
package/dist/agent.schema.js
CHANGED
|
@@ -1 +1,25 @@
|
|
|
1
|
-
|
|
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
|
|
2
|
-
import type { AIProviderInsert, AIProviderRow } from '../ai-provider.schema
|
|
3
|
-
import type { CredentialInsert, CredentialRow } from '../credential.schema
|
|
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
|
|
48
|
-
export declare function
|
|
49
|
-
export declare function
|
|
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;
|
package/dist/ai-config/index.js
CHANGED
|
@@ -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 =
|
|
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
|
|
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
|
|
115
|
-
|
|
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
|
|
118
|
-
const normalizedLeft =
|
|
119
|
-
const normalizedRight =
|
|
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 `${
|
|
144
|
+
return `${normalizeAIConfigProviderId(providerId)}-default`;
|
|
127
145
|
}
|
|
128
146
|
export function aiConfigProviderUri(providerId) {
|
|
129
|
-
return `/settings/ai/providers.ttl#${
|
|
147
|
+
return `/settings/ai/providers.ttl#${normalizeAIConfigProviderId(providerId)}`;
|
|
130
148
|
}
|
|
131
149
|
export function aiConfigModelUri(modelId) {
|
|
132
|
-
return `/settings/ai/models.ttl#${
|
|
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 =
|
|
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 =
|
|
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 =
|
|
175
|
+
const providerId = normalizeAIConfigProviderId(String(row.isProvidedBy ?? ''));
|
|
158
176
|
if (!providerId)
|
|
159
177
|
continue;
|
|
160
|
-
const modelId =
|
|
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 =
|
|
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 =
|
|
231
|
+
const providerId = normalizeAIConfigProviderId(input.providerId);
|
|
214
232
|
const metadata = getAIConfigProviderMetadata(providerId);
|
|
215
|
-
const existingProvider = input.currentProviderRows.find((row) => row.id
|
|
216
|
-
const existingCredential = input.currentCredentialRows.find((row) =>
|
|
217
|
-
const existingModels = input.currentModelRows.filter((row) =>
|
|
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
|
-
:
|
|
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
|
-
|
|
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 =
|
|
283
|
+
const modelId = normalizeAIConfigResourceId(model.id);
|
|
266
284
|
if (!modelId)
|
|
267
285
|
continue;
|
|
268
286
|
nextIds.add(modelId);
|
|
@@ -1 +1,13 @@
|
|
|
1
|
-
export
|
|
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;
|
package/dist/ai-model.schema.js
CHANGED
|
@@ -1 +1,17 @@
|
|
|
1
|
-
|
|
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
|
|
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
|
-
|
|
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
|
|
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;
|
package/dist/approval.schema.js
CHANGED
|
@@ -1 +1,33 @@
|
|
|
1
|
-
|
|
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
|
+
});
|
package/dist/audit.schema.d.ts
CHANGED
|
@@ -1 +1,17 @@
|
|
|
1
|
-
export
|
|
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;
|
package/dist/audit.schema.js
CHANGED
|
@@ -1 +1,29 @@
|
|
|
1
|
-
|
|
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
|
|
2
|
-
id: import("@undefineds.co/
|
|
3
|
-
title: import("@undefineds.co/
|
|
4
|
-
description: import("@undefineds.co/
|
|
5
|
-
avatarUrl: import("@undefineds.co/
|
|
6
|
-
starred: import("@undefineds.co/
|
|
7
|
-
muted: import("@undefineds.co/
|
|
8
|
-
unreadCount: import("@undefineds.co/
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
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;
|