@undefineds.co/models 0.2.13 → 0.2.15
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 +2 -1
- package/dist/audit.schema.d.ts +4 -2
- package/dist/audit.schema.js +3 -3
- package/dist/namespaces.js +1 -0
- package/dist/schema.d.ts +4 -2
- package/dist/sidecar/persistence-mapping.d.ts +1 -1
- package/dist/vocab/sidecar.vocab.d.ts +2 -1
- package/dist/vocab/sidecar.vocab.js +2 -1
- package/package.json +10 -2
package/README.md
CHANGED
|
@@ -54,6 +54,8 @@ LinX 的所有数据存储在 Solid Pod 中,使用标准的 RDF 格式。本
|
|
|
54
54
|
- Pod schema 使用 `chat`、`thread` 这类 URI-valued RDF relation 字段。
|
|
55
55
|
- `chatId`、`threadId` 只允许作为 UI 状态、函数参数、runtime protocol 字段或 metadata 中的兼容信息,不允许作为持久 RDF link 字段。
|
|
56
56
|
- 新增 shared model 代码优先使用 `chatResource`、`threadResource`、`messageResource`、`sessionResource` 等 Solid resource 命名;`*Table` 只作为兼容 alias 逐步退出。
|
|
57
|
+
- 如果壳层需要新的查询、upsert、resolve-by-uri、审计或审批状态变更能力,优先在本包新增 repository/helper 和 tests;不要在 CLI/App 中复制 predicate、subject template、Turtle 读写或 shared 状态机。
|
|
58
|
+
- `approval` / `grant` / `audit` / `inboxNotification` / `session` 等跨端控制面也属于本包的 shared resource 语义。CLI/App 只负责把 Pi/Codex/Claude 等运行时事件映射成本包定义的 insert/update DTO,不能另建一套存储路径或审批策略。
|
|
57
59
|
|
|
58
60
|
---
|
|
59
61
|
|
|
@@ -591,4 +593,3 @@ MIT License
|
|
|
591
593
|
|
|
592
594
|
|
|
593
595
|
|
|
594
|
-
|
package/dist/audit.schema.d.ts
CHANGED
|
@@ -5,9 +5,10 @@ export declare const auditResource: import("@undefineds.co/drizzle-solid/dist/co
|
|
|
5
5
|
actorRole: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"string", null, true, false>;
|
|
6
6
|
onBehalfOf: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"uri", null, false, false>;
|
|
7
7
|
session: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"uri", null, false, false>;
|
|
8
|
+
entry: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"uri", null, false, false>;
|
|
8
9
|
toolCallId: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"string", null, false, false>;
|
|
10
|
+
toolName: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"string", null, false, false>;
|
|
9
11
|
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
12
|
policy: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"uri", null, false, false>;
|
|
12
13
|
policyVersion: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"string", null, false, false>;
|
|
13
14
|
createdAt: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"datetime", null, true, true>;
|
|
@@ -20,9 +21,10 @@ export declare const auditTable: import("@undefineds.co/drizzle-solid/dist/core/
|
|
|
20
21
|
actorRole: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"string", null, true, false>;
|
|
21
22
|
onBehalfOf: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"uri", null, false, false>;
|
|
22
23
|
session: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"uri", null, false, false>;
|
|
24
|
+
entry: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"uri", null, false, false>;
|
|
23
25
|
toolCallId: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"string", null, false, false>;
|
|
26
|
+
toolName: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"string", null, false, false>;
|
|
24
27
|
approval: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"uri", null, false, false>;
|
|
25
|
-
context: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"string", null, false, false>;
|
|
26
28
|
policy: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"uri", null, false, false>;
|
|
27
29
|
policyVersion: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"string", null, false, false>;
|
|
28
30
|
createdAt: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"datetime", null, true, true>;
|
package/dist/audit.schema.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { podTable, uri, string,
|
|
1
|
+
import { podTable, uri, string, timestamp, id } from '@undefineds.co/drizzle-solid';
|
|
2
2
|
import { UDFS, DCTerms } from './namespaces.js';
|
|
3
3
|
// Append-only audit entry resource (separate from Solid inbox notifications).
|
|
4
4
|
// Audit entries are independent events; session/chat/thread are optional relations,
|
|
@@ -13,10 +13,10 @@ export const auditResource = podTable('audit', {
|
|
|
13
13
|
onBehalfOf: uri('onBehalfOf').predicate(UDFS.onBehalfOf),
|
|
14
14
|
// Relations
|
|
15
15
|
session: uri('session').predicate(UDFS.session),
|
|
16
|
+
entry: uri('entry').predicate(UDFS.entry),
|
|
16
17
|
toolCallId: string('toolCallId').predicate(UDFS.toolCallId),
|
|
18
|
+
toolName: string('toolName').predicate(UDFS.toolName),
|
|
17
19
|
approval: uri('approval').predicate(UDFS.approval),
|
|
18
|
-
// JSON payload with policy/reasoning snapshot
|
|
19
|
-
context: text('context').predicate(UDFS.context),
|
|
20
20
|
// Policy metadata
|
|
21
21
|
policy: uri('policy').predicate(UDFS.policy),
|
|
22
22
|
policyVersion: string('policyVersion').predicate(UDFS.policyVersion),
|
package/dist/namespaces.js
CHANGED
package/dist/schema.d.ts
CHANGED
|
@@ -215,9 +215,10 @@ export declare const solidResources: {
|
|
|
215
215
|
actorRole: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"string", null, true, false>;
|
|
216
216
|
onBehalfOf: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"uri", null, false, false>;
|
|
217
217
|
session: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"uri", null, false, false>;
|
|
218
|
+
entry: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"uri", null, false, false>;
|
|
218
219
|
toolCallId: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"string", null, false, false>;
|
|
220
|
+
toolName: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"string", null, false, false>;
|
|
219
221
|
approval: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"uri", null, false, false>;
|
|
220
|
-
context: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"string", null, false, false>;
|
|
221
222
|
policy: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"uri", null, false, false>;
|
|
222
223
|
policyVersion: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"string", null, false, false>;
|
|
223
224
|
createdAt: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"datetime", null, true, true>;
|
|
@@ -460,9 +461,10 @@ export declare const solidSchema: {
|
|
|
460
461
|
actorRole: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"string", null, true, false>;
|
|
461
462
|
onBehalfOf: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"uri", null, false, false>;
|
|
462
463
|
session: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"uri", null, false, false>;
|
|
464
|
+
entry: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"uri", null, false, false>;
|
|
463
465
|
toolCallId: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"string", null, false, false>;
|
|
466
|
+
toolName: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"string", null, false, false>;
|
|
464
467
|
approval: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"uri", null, false, false>;
|
|
465
|
-
context: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"string", null, false, false>;
|
|
466
468
|
policy: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"uri", null, false, false>;
|
|
467
469
|
policyVersion: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"string", null, false, false>;
|
|
468
470
|
createdAt: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"datetime", null, true, true>;
|
|
@@ -11,7 +11,7 @@ export type ChatSessionProjection = {
|
|
|
11
11
|
};
|
|
12
12
|
export type ApprovalProjectionInsert = Pick<ApprovalInsert, 'session' | 'toolCallId' | 'toolName' | 'target' | 'action' | 'risk' | 'status' | 'policyVersion'>;
|
|
13
13
|
export type ApprovalProjectionUpdate = Partial<Pick<ApprovalUpdate, 'status' | 'assignedTo' | 'decisionBy' | 'decisionRole' | 'onBehalfOf' | 'reason' | 'policyVersion' | 'resolvedAt'>>;
|
|
14
|
-
export type AuditProjectionInsert = Pick<AuditInsert, 'action' | 'actor' | 'actorRole' | 'onBehalfOf' | 'session' | 'toolCallId' | '
|
|
14
|
+
export type AuditProjectionInsert = Pick<AuditInsert, 'action' | 'actor' | 'actorRole' | 'onBehalfOf' | 'session' | 'entry' | 'toolCallId' | 'toolName' | 'approval' | 'policy' | 'policyVersion'>;
|
|
15
15
|
export type GrantProjectionInsert = Pick<GrantInsert, 'target' | 'action' | 'effect' | 'riskCeiling' | 'decisionBy' | 'decisionRole' | 'onBehalfOf'>;
|
|
16
16
|
export type InboxNotificationProjectionInsert = Pick<InboxNotificationInsert, 'actor' | 'object'>;
|
|
17
17
|
export declare const SidecarEventToPodMapping: {
|
|
@@ -21,9 +21,10 @@ export declare const AuditVocab: {
|
|
|
21
21
|
readonly actorRole: string;
|
|
22
22
|
readonly onBehalfOf: string;
|
|
23
23
|
readonly session: string;
|
|
24
|
+
readonly entry: string;
|
|
24
25
|
readonly toolCallId: string;
|
|
26
|
+
readonly toolName: string;
|
|
25
27
|
readonly approval: string;
|
|
26
|
-
readonly context: string;
|
|
27
28
|
readonly policy: string;
|
|
28
29
|
readonly policyVersion: string;
|
|
29
30
|
readonly createdAt: string;
|
|
@@ -22,9 +22,10 @@ export const AuditVocab = {
|
|
|
22
22
|
actorRole: UDFS.actorRole,
|
|
23
23
|
onBehalfOf: UDFS.onBehalfOf,
|
|
24
24
|
session: UDFS.session,
|
|
25
|
+
entry: UDFS.entry,
|
|
25
26
|
toolCallId: UDFS.toolCallId,
|
|
27
|
+
toolName: UDFS.toolName,
|
|
26
28
|
approval: UDFS.approval,
|
|
27
|
-
context: UDFS.context,
|
|
28
29
|
policy: UDFS.policy,
|
|
29
30
|
policyVersion: UDFS.policyVersion,
|
|
30
31
|
createdAt: DCTerms.created,
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@undefineds.co/models",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.15",
|
|
4
4
|
"private": false,
|
|
5
5
|
"type": "module",
|
|
6
6
|
"exports": {
|
|
@@ -36,13 +36,21 @@
|
|
|
36
36
|
"types": "./dist/profile.schema.d.ts",
|
|
37
37
|
"default": "./dist/profile.schema.js"
|
|
38
38
|
},
|
|
39
|
+
"./vocab": {
|
|
40
|
+
"types": "./dist/vocab/index.d.ts",
|
|
41
|
+
"default": "./dist/vocab/index.js"
|
|
42
|
+
},
|
|
43
|
+
"./vocab/sidecar": {
|
|
44
|
+
"types": "./dist/vocab/sidecar.vocab.d.ts",
|
|
45
|
+
"default": "./dist/vocab/sidecar.vocab.js"
|
|
46
|
+
},
|
|
39
47
|
"./watch": {
|
|
40
48
|
"types": "./dist/watch/index.d.ts",
|
|
41
49
|
"default": "./dist/watch/index.js"
|
|
42
50
|
}
|
|
43
51
|
},
|
|
44
52
|
"scripts": {
|
|
45
|
-
"build": "tsc -p tsconfig.json",
|
|
53
|
+
"build": "tsc -p tsconfig.json && node scripts/fix-dist-esm.mjs",
|
|
46
54
|
"lint": "echo \"lint not configured\"",
|
|
47
55
|
"pack:release": "node scripts/pack-release.mjs",
|
|
48
56
|
"sync:discovery:vercel": "node --experimental-strip-types scripts/sync-discovery-vercel.ts",
|