botnote 0.1.55 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cli.js +3 -1
- package/dist/cli.js.map +1 -1
- package/dist/db/migrations/0028_workspaces.sql +65 -0
- package/dist/db/migrations/0029_drop_global_uniques.sql +38 -0
- package/dist/db/schema.d.ts +215 -2
- package/dist/db/schema.js +32 -4
- package/dist/db/schema.js.map +1 -1
- package/dist/rest/routes.js +58 -58
- package/dist/rest/routes.js.map +1 -1
- package/dist/rest/server.d.ts +11 -1
- package/dist/rest/server.js +19 -3
- package/dist/rest/server.js.map +1 -1
- package/dist/service/embedding.d.ts +5 -0
- package/dist/service/embedding.js +6 -1
- package/dist/service/embedding.js.map +1 -1
- package/dist/service/embedding_settings.d.ts +4 -3
- package/dist/service/embedding_settings.js +13 -16
- package/dist/service/embedding_settings.js.map +1 -1
- package/dist/service/entities.d.ts +29 -20
- package/dist/service/entities.js +101 -60
- package/dist/service/entities.js.map +1 -1
- package/dist/service/feedback.d.ts +3 -2
- package/dist/service/feedback.js +8 -4
- package/dist/service/feedback.js.map +1 -1
- package/dist/service/opening_brief.d.ts +2 -1
- package/dist/service/opening_brief.js +6 -7
- package/dist/service/opening_brief.js.map +1 -1
- package/dist/service/projects.d.ts +6 -5
- package/dist/service/projects.js +25 -13
- package/dist/service/projects.js.map +1 -1
- package/dist/service/recurrence.d.ts +7 -6
- package/dist/service/recurrence.js +36 -14
- package/dist/service/recurrence.js.map +1 -1
- package/dist/service/scope.d.ts +14 -0
- package/dist/service/scope.js +19 -0
- package/dist/service/scope.js.map +1 -0
- package/dist/service/search.d.ts +3 -2
- package/dist/service/search.js +12 -9
- package/dist/service/search.js.map +1 -1
- package/dist/service/sessions.d.ts +7 -8
- package/dist/service/sessions.js +8 -8
- package/dist/service/sessions.js.map +1 -1
- package/dist/service/tasks.d.ts +2 -1
- package/dist/service/tasks.js +13 -6
- package/dist/service/tasks.js.map +1 -1
- package/dist/service/tokens.d.ts +7 -6
- package/dist/service/tokens.js +17 -10
- package/dist/service/tokens.js.map +1 -1
- package/dist/service/workspace_settings.d.ts +3 -2
- package/dist/service/workspace_settings.js +11 -15
- package/dist/service/workspace_settings.js.map +1 -1
- package/package.json +1 -1
package/dist/cli.js
CHANGED
|
@@ -6,6 +6,7 @@ import { buildMcpServer } from "./mcp/server.js";
|
|
|
6
6
|
import { EmbeddingService } from "./service/embedding.js";
|
|
7
7
|
import { purgeExpired } from "./service/entities.js";
|
|
8
8
|
import { materializeScheduledRecurrences } from "./service/recurrence.js";
|
|
9
|
+
import { resolveDefaultScope } from "./service/scope.js";
|
|
9
10
|
import { DEFAULT_PORT, envValue, resolveBaseUrl } from "./config.js";
|
|
10
11
|
import { authConfigFromEnv, isLoopback } from "./rest/auth.js";
|
|
11
12
|
import { buildServer } from "./rest/server.js";
|
|
@@ -27,10 +28,11 @@ async function runRest() {
|
|
|
27
28
|
DEFAULT_RECURRENCE_MATERIALIZE_INTERVAL_MS);
|
|
28
29
|
await migrate();
|
|
29
30
|
const { db } = createDb();
|
|
31
|
+
const defaultScope = await resolveDefaultScope(db);
|
|
30
32
|
const embedding = new EmbeddingService(db, { apiKey: process.env.OPENAI_API_KEY });
|
|
31
33
|
await embedding.reloadConfig();
|
|
32
34
|
const auth = authConfigFromEnv();
|
|
33
|
-
const app = await buildServer({ db, embedding, logLevel, auth });
|
|
35
|
+
const app = await buildServer({ db, embedding, logLevel, auth, defaultScope });
|
|
34
36
|
await app.listen({ port, host });
|
|
35
37
|
app.log.info(`botnote v${VERSION} listening on http://${host}:${port} (docs: /docs, embeddings ${embedding.isEnabled() ? "ON" : "OFF"})`);
|
|
36
38
|
if (!auth.required && !isLoopback(host) && host !== "localhost") {
|
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAC1C,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,+BAA+B,EAAE,MAAM,yBAAyB,CAAC;AAC1E,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AACrE,OAAO,EAAE,iBAAiB,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC/D,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAEvC,MAAM,0CAA0C,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;AACjE,iFAAiF;AACjF,MAAM,4BAA4B,GAAG,EAAE,CAAC;AACxC,MAAM,uBAAuB,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;AAEpD,SAAS,UAAU;IACjB,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;IACvB,GAAG,CAAC,QAAQ,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC;IAC9B,OAAO,GAAG,CAAC;AACb,CAAC;AAED,KAAK,UAAU,OAAO;IACpB,MAAM,IAAI,GAAG,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,YAAY,CAAC,CAAC;IACxE,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,YAAY,IAAI,WAAW,CAAC;IACrD,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,MAAM,CAAC;IACzD,MAAM,oBAAoB,GAAG,MAAM,CACjC,OAAO,CAAC,GAAG,CAAC,0CAA0C;QACpD,0CAA0C,CAC7C,CAAC;IAEF,MAAM,OAAO,EAAE,CAAC;IAEhB,MAAM,EAAE,EAAE,EAAE,GAAG,QAAQ,EAAE,CAAC;IAC1B,MAAM,SAAS,GAAG,IAAI,gBAAgB,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,CAAC,CAAC;IACnF,MAAM,SAAS,CAAC,YAAY,EAAE,CAAC;IAE/B,MAAM,IAAI,GAAG,iBAAiB,EAAE,CAAC;IACjC,MAAM,GAAG,GAAG,MAAM,WAAW,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
-- Workspaces: the tenant boundary shared by the single-user OSS build and the
|
|
2
|
+
-- hosted multi-user build (BOT-113, subtask 1 of BOT-101).
|
|
3
|
+
--
|
|
4
|
+
-- Schema only. Every tenant table gains workspace_id with a DEFAULT pointing
|
|
5
|
+
-- at the fixed default workspace, which backfills existing rows in the same
|
|
6
|
+
-- statement and keeps inserts from the previous release working. Service code
|
|
7
|
+
-- starts filtering by it in the next release (BOT-114); the old global unique
|
|
8
|
+
-- indexes stay until that release has shipped.
|
|
9
|
+
|
|
10
|
+
CREATE TABLE IF NOT EXISTS workspaces (
|
|
11
|
+
id uuid PRIMARY KEY DEFAULT gen_random_uuid(),
|
|
12
|
+
slug text NOT NULL,
|
|
13
|
+
name text NOT NULL,
|
|
14
|
+
created_at timestamptz NOT NULL DEFAULT now(),
|
|
15
|
+
updated_at timestamptz NOT NULL DEFAULT now()
|
|
16
|
+
);
|
|
17
|
+
|
|
18
|
+
CREATE UNIQUE INDEX IF NOT EXISTS workspaces_slug_idx ON workspaces (slug);
|
|
19
|
+
|
|
20
|
+
DROP TRIGGER IF EXISTS workspaces_touch_updated_at ON workspaces;
|
|
21
|
+
CREATE TRIGGER workspaces_touch_updated_at
|
|
22
|
+
BEFORE UPDATE ON workspaces
|
|
23
|
+
FOR EACH ROW EXECUTE FUNCTION botnote_touch_updated_at();
|
|
24
|
+
|
|
25
|
+
INSERT INTO workspaces (id, slug, name)
|
|
26
|
+
VALUES ('00000000-0000-4000-8000-000000000001', 'default', 'Default workspace')
|
|
27
|
+
ON CONFLICT (id) DO NOTHING;
|
|
28
|
+
|
|
29
|
+
ALTER TABLE projects
|
|
30
|
+
ADD COLUMN IF NOT EXISTS workspace_id uuid NOT NULL
|
|
31
|
+
DEFAULT '00000000-0000-4000-8000-000000000001' REFERENCES workspaces(id);
|
|
32
|
+
ALTER TABLE entities
|
|
33
|
+
ADD COLUMN IF NOT EXISTS workspace_id uuid NOT NULL
|
|
34
|
+
DEFAULT '00000000-0000-4000-8000-000000000001' REFERENCES workspaces(id);
|
|
35
|
+
ALTER TABLE recurrence_rules
|
|
36
|
+
ADD COLUMN IF NOT EXISTS workspace_id uuid NOT NULL
|
|
37
|
+
DEFAULT '00000000-0000-4000-8000-000000000001' REFERENCES workspaces(id);
|
|
38
|
+
ALTER TABLE tokens
|
|
39
|
+
ADD COLUMN IF NOT EXISTS workspace_id uuid NOT NULL
|
|
40
|
+
DEFAULT '00000000-0000-4000-8000-000000000001' REFERENCES workspaces(id);
|
|
41
|
+
ALTER TABLE sessions
|
|
42
|
+
ADD COLUMN IF NOT EXISTS workspace_id uuid NOT NULL
|
|
43
|
+
DEFAULT '00000000-0000-4000-8000-000000000001' REFERENCES workspaces(id);
|
|
44
|
+
ALTER TABLE embedding_settings
|
|
45
|
+
ADD COLUMN IF NOT EXISTS workspace_id uuid NOT NULL
|
|
46
|
+
DEFAULT '00000000-0000-4000-8000-000000000001' REFERENCES workspaces(id);
|
|
47
|
+
ALTER TABLE workspace_settings
|
|
48
|
+
ADD COLUMN IF NOT EXISTS workspace_id uuid NOT NULL
|
|
49
|
+
DEFAULT '00000000-0000-4000-8000-000000000001' REFERENCES workspaces(id);
|
|
50
|
+
|
|
51
|
+
-- Tenant-scoped uniqueness. The global projects_key_idx and
|
|
52
|
+
-- entities_idempotency_idx remain for one release so the current code keeps
|
|
53
|
+
-- its guarantees; BOT-114 drops them once every query is scoped.
|
|
54
|
+
CREATE UNIQUE INDEX IF NOT EXISTS projects_ws_key_unique
|
|
55
|
+
ON projects (workspace_id, key);
|
|
56
|
+
CREATE UNIQUE INDEX IF NOT EXISTS entities_ws_idem_unique
|
|
57
|
+
ON entities (workspace_id, idempotency_key)
|
|
58
|
+
WHERE idempotency_key IS NOT NULL;
|
|
59
|
+
|
|
60
|
+
CREATE INDEX IF NOT EXISTS entities_ws_kind_created_idx
|
|
61
|
+
ON entities (workspace_id, kind, created_at DESC);
|
|
62
|
+
CREATE INDEX IF NOT EXISTS recurrence_rules_ws_idx
|
|
63
|
+
ON recurrence_rules (workspace_id, enabled, next_occurrence_at);
|
|
64
|
+
CREATE INDEX IF NOT EXISTS tokens_ws_idx ON tokens (workspace_id);
|
|
65
|
+
CREATE INDEX IF NOT EXISTS sessions_ws_idx ON sessions (workspace_id);
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
-- Workspace scoping is live in service code as of this release (BOT-114,
|
|
2
|
+
-- subtask 2 of BOT-101): every tenant-facing query filters by workspace_id and
|
|
3
|
+
-- every insert stamps it.
|
|
4
|
+
--
|
|
5
|
+
-- 1. The per-workspace unique indexes from 0028 (projects_ws_key_unique,
|
|
6
|
+
-- entities_ws_idem_unique) now carry the invariant, so the pre-workspace
|
|
7
|
+
-- global uniques are redundant and would wrongly reject the same project
|
|
8
|
+
-- key or idempotency key reused in a second workspace.
|
|
9
|
+
--
|
|
10
|
+
-- 2. workspace_settings and embedding_settings were singletons keyed by
|
|
11
|
+
-- id = 'default'. They become one row per workspace: the primary key moves
|
|
12
|
+
-- to workspace_id and `id` stays as a constant discriminator column. The
|
|
13
|
+
-- CHECK (id = 'default') is kept on purpose — it no longer limits the row
|
|
14
|
+
-- count once id is not unique, and keeping it means the N-1 code path
|
|
15
|
+
-- (INSERT id='default' ... ON CONFLICT DO NOTHING; SELECT WHERE id='default')
|
|
16
|
+
-- still runs unchanged against this schema.
|
|
17
|
+
|
|
18
|
+
DROP INDEX IF EXISTS projects_key_idx;
|
|
19
|
+
DROP INDEX IF EXISTS entities_idempotency_idx;
|
|
20
|
+
|
|
21
|
+
DO $$
|
|
22
|
+
BEGIN
|
|
23
|
+
IF EXISTS (SELECT 1 FROM pg_constraint
|
|
24
|
+
WHERE conname = 'workspace_settings_pkey'
|
|
25
|
+
AND conrelid = 'workspace_settings'::regclass
|
|
26
|
+
AND pg_get_constraintdef(oid) = 'PRIMARY KEY (id)') THEN
|
|
27
|
+
ALTER TABLE workspace_settings DROP CONSTRAINT workspace_settings_pkey;
|
|
28
|
+
ALTER TABLE workspace_settings ADD CONSTRAINT workspace_settings_pkey PRIMARY KEY (workspace_id);
|
|
29
|
+
END IF;
|
|
30
|
+
|
|
31
|
+
IF EXISTS (SELECT 1 FROM pg_constraint
|
|
32
|
+
WHERE conname = 'embedding_settings_pkey'
|
|
33
|
+
AND conrelid = 'embedding_settings'::regclass
|
|
34
|
+
AND pg_get_constraintdef(oid) = 'PRIMARY KEY (id)') THEN
|
|
35
|
+
ALTER TABLE embedding_settings DROP CONSTRAINT embedding_settings_pkey;
|
|
36
|
+
ALTER TABLE embedding_settings ADD CONSTRAINT embedding_settings_pkey PRIMARY KEY (workspace_id);
|
|
37
|
+
END IF;
|
|
38
|
+
END $$;
|
package/dist/db/schema.d.ts
CHANGED
|
@@ -7,6 +7,99 @@ export declare const ACTOR_KINDS: readonly ["human", "agent", "system"];
|
|
|
7
7
|
export type ActorKind = (typeof ACTOR_KINDS)[number];
|
|
8
8
|
export declare const EDGE_KINDS: readonly ["blocks", "references", "parent_of", "supersedes"];
|
|
9
9
|
export type EdgeKind = (typeof EDGE_KINDS)[number];
|
|
10
|
+
export declare const DEFAULT_WORKSPACE_ID = "00000000-0000-4000-8000-000000000001";
|
|
11
|
+
export declare const workspaces: import("drizzle-orm/pg-core").PgTableWithColumns<{
|
|
12
|
+
name: "workspaces";
|
|
13
|
+
schema: undefined;
|
|
14
|
+
columns: {
|
|
15
|
+
id: import("drizzle-orm/pg-core").PgColumn<{
|
|
16
|
+
name: "id";
|
|
17
|
+
tableName: "workspaces";
|
|
18
|
+
dataType: "string";
|
|
19
|
+
columnType: "PgUUID";
|
|
20
|
+
data: string;
|
|
21
|
+
driverParam: string;
|
|
22
|
+
notNull: true;
|
|
23
|
+
hasDefault: true;
|
|
24
|
+
isPrimaryKey: true;
|
|
25
|
+
isAutoincrement: false;
|
|
26
|
+
hasRuntimeDefault: false;
|
|
27
|
+
enumValues: undefined;
|
|
28
|
+
baseColumn: never;
|
|
29
|
+
identity: undefined;
|
|
30
|
+
generated: undefined;
|
|
31
|
+
}, {}, {}>;
|
|
32
|
+
slug: import("drizzle-orm/pg-core").PgColumn<{
|
|
33
|
+
name: "slug";
|
|
34
|
+
tableName: "workspaces";
|
|
35
|
+
dataType: "string";
|
|
36
|
+
columnType: "PgText";
|
|
37
|
+
data: string;
|
|
38
|
+
driverParam: string;
|
|
39
|
+
notNull: true;
|
|
40
|
+
hasDefault: false;
|
|
41
|
+
isPrimaryKey: false;
|
|
42
|
+
isAutoincrement: false;
|
|
43
|
+
hasRuntimeDefault: false;
|
|
44
|
+
enumValues: [string, ...string[]];
|
|
45
|
+
baseColumn: never;
|
|
46
|
+
identity: undefined;
|
|
47
|
+
generated: undefined;
|
|
48
|
+
}, {}, {}>;
|
|
49
|
+
name: import("drizzle-orm/pg-core").PgColumn<{
|
|
50
|
+
name: "name";
|
|
51
|
+
tableName: "workspaces";
|
|
52
|
+
dataType: "string";
|
|
53
|
+
columnType: "PgText";
|
|
54
|
+
data: string;
|
|
55
|
+
driverParam: string;
|
|
56
|
+
notNull: true;
|
|
57
|
+
hasDefault: false;
|
|
58
|
+
isPrimaryKey: false;
|
|
59
|
+
isAutoincrement: false;
|
|
60
|
+
hasRuntimeDefault: false;
|
|
61
|
+
enumValues: [string, ...string[]];
|
|
62
|
+
baseColumn: never;
|
|
63
|
+
identity: undefined;
|
|
64
|
+
generated: undefined;
|
|
65
|
+
}, {}, {}>;
|
|
66
|
+
createdAt: import("drizzle-orm/pg-core").PgColumn<{
|
|
67
|
+
name: "created_at";
|
|
68
|
+
tableName: "workspaces";
|
|
69
|
+
dataType: "date";
|
|
70
|
+
columnType: "PgTimestamp";
|
|
71
|
+
data: Date;
|
|
72
|
+
driverParam: string;
|
|
73
|
+
notNull: true;
|
|
74
|
+
hasDefault: true;
|
|
75
|
+
isPrimaryKey: false;
|
|
76
|
+
isAutoincrement: false;
|
|
77
|
+
hasRuntimeDefault: false;
|
|
78
|
+
enumValues: undefined;
|
|
79
|
+
baseColumn: never;
|
|
80
|
+
identity: undefined;
|
|
81
|
+
generated: undefined;
|
|
82
|
+
}, {}, {}>;
|
|
83
|
+
updatedAt: import("drizzle-orm/pg-core").PgColumn<{
|
|
84
|
+
name: "updated_at";
|
|
85
|
+
tableName: "workspaces";
|
|
86
|
+
dataType: "date";
|
|
87
|
+
columnType: "PgTimestamp";
|
|
88
|
+
data: Date;
|
|
89
|
+
driverParam: string;
|
|
90
|
+
notNull: true;
|
|
91
|
+
hasDefault: true;
|
|
92
|
+
isPrimaryKey: false;
|
|
93
|
+
isAutoincrement: false;
|
|
94
|
+
hasRuntimeDefault: false;
|
|
95
|
+
enumValues: undefined;
|
|
96
|
+
baseColumn: never;
|
|
97
|
+
identity: undefined;
|
|
98
|
+
generated: undefined;
|
|
99
|
+
}, {}, {}>;
|
|
100
|
+
};
|
|
101
|
+
dialect: "pg";
|
|
102
|
+
}>;
|
|
10
103
|
export declare const PROJECT_STATUSES: readonly ["planned", "active", "watching", "paused", "archived"];
|
|
11
104
|
export type ProjectStatus = (typeof PROJECT_STATUSES)[number];
|
|
12
105
|
export declare const projects: import("drizzle-orm/pg-core").PgTableWithColumns<{
|
|
@@ -30,6 +123,23 @@ export declare const projects: import("drizzle-orm/pg-core").PgTableWithColumns<
|
|
|
30
123
|
identity: undefined;
|
|
31
124
|
generated: undefined;
|
|
32
125
|
}, {}, {}>;
|
|
126
|
+
workspaceId: import("drizzle-orm/pg-core").PgColumn<{
|
|
127
|
+
name: "workspace_id";
|
|
128
|
+
tableName: "projects";
|
|
129
|
+
dataType: "string";
|
|
130
|
+
columnType: "PgUUID";
|
|
131
|
+
data: string;
|
|
132
|
+
driverParam: string;
|
|
133
|
+
notNull: true;
|
|
134
|
+
hasDefault: true;
|
|
135
|
+
isPrimaryKey: false;
|
|
136
|
+
isAutoincrement: false;
|
|
137
|
+
hasRuntimeDefault: false;
|
|
138
|
+
enumValues: undefined;
|
|
139
|
+
baseColumn: never;
|
|
140
|
+
identity: undefined;
|
|
141
|
+
generated: undefined;
|
|
142
|
+
}, {}, {}>;
|
|
33
143
|
key: import("drizzle-orm/pg-core").PgColumn<{
|
|
34
144
|
name: "key";
|
|
35
145
|
tableName: "projects";
|
|
@@ -224,6 +334,23 @@ export declare const entities: import("drizzle-orm/pg-core").PgTableWithColumns<
|
|
|
224
334
|
identity: undefined;
|
|
225
335
|
generated: undefined;
|
|
226
336
|
}, {}, {}>;
|
|
337
|
+
workspaceId: import("drizzle-orm/pg-core").PgColumn<{
|
|
338
|
+
name: "workspace_id";
|
|
339
|
+
tableName: "entities";
|
|
340
|
+
dataType: "string";
|
|
341
|
+
columnType: "PgUUID";
|
|
342
|
+
data: string;
|
|
343
|
+
driverParam: string;
|
|
344
|
+
notNull: true;
|
|
345
|
+
hasDefault: true;
|
|
346
|
+
isPrimaryKey: false;
|
|
347
|
+
isAutoincrement: false;
|
|
348
|
+
hasRuntimeDefault: false;
|
|
349
|
+
enumValues: undefined;
|
|
350
|
+
baseColumn: never;
|
|
351
|
+
identity: undefined;
|
|
352
|
+
generated: undefined;
|
|
353
|
+
}, {}, {}>;
|
|
227
354
|
projectId: import("drizzle-orm/pg-core").PgColumn<{
|
|
228
355
|
name: "project_id";
|
|
229
356
|
tableName: "entities";
|
|
@@ -717,6 +844,23 @@ export declare const recurrenceRules: import("drizzle-orm/pg-core").PgTableWithC
|
|
|
717
844
|
identity: undefined;
|
|
718
845
|
generated: undefined;
|
|
719
846
|
}, {}, {}>;
|
|
847
|
+
workspaceId: import("drizzle-orm/pg-core").PgColumn<{
|
|
848
|
+
name: "workspace_id";
|
|
849
|
+
tableName: "recurrence_rules";
|
|
850
|
+
dataType: "string";
|
|
851
|
+
columnType: "PgUUID";
|
|
852
|
+
data: string;
|
|
853
|
+
driverParam: string;
|
|
854
|
+
notNull: true;
|
|
855
|
+
hasDefault: true;
|
|
856
|
+
isPrimaryKey: false;
|
|
857
|
+
isAutoincrement: false;
|
|
858
|
+
hasRuntimeDefault: false;
|
|
859
|
+
enumValues: undefined;
|
|
860
|
+
baseColumn: never;
|
|
861
|
+
identity: undefined;
|
|
862
|
+
generated: undefined;
|
|
863
|
+
}, {}, {}>;
|
|
720
864
|
seriesId: import("drizzle-orm/pg-core").PgColumn<{
|
|
721
865
|
name: "series_id";
|
|
722
866
|
tableName: "recurrence_rules";
|
|
@@ -1122,6 +1266,23 @@ export declare const tokens: import("drizzle-orm/pg-core").PgTableWithColumns<{
|
|
|
1122
1266
|
identity: undefined;
|
|
1123
1267
|
generated: undefined;
|
|
1124
1268
|
}, {}, {}>;
|
|
1269
|
+
workspaceId: import("drizzle-orm/pg-core").PgColumn<{
|
|
1270
|
+
name: "workspace_id";
|
|
1271
|
+
tableName: "tokens";
|
|
1272
|
+
dataType: "string";
|
|
1273
|
+
columnType: "PgUUID";
|
|
1274
|
+
data: string;
|
|
1275
|
+
driverParam: string;
|
|
1276
|
+
notNull: true;
|
|
1277
|
+
hasDefault: true;
|
|
1278
|
+
isPrimaryKey: false;
|
|
1279
|
+
isAutoincrement: false;
|
|
1280
|
+
hasRuntimeDefault: false;
|
|
1281
|
+
enumValues: undefined;
|
|
1282
|
+
baseColumn: never;
|
|
1283
|
+
identity: undefined;
|
|
1284
|
+
generated: undefined;
|
|
1285
|
+
}, {}, {}>;
|
|
1125
1286
|
name: import("drizzle-orm/pg-core").PgColumn<{
|
|
1126
1287
|
name: "name";
|
|
1127
1288
|
tableName: "tokens";
|
|
@@ -1240,7 +1401,7 @@ export declare const embeddingSettings: import("drizzle-orm/pg-core").PgTableWit
|
|
|
1240
1401
|
driverParam: string;
|
|
1241
1402
|
notNull: true;
|
|
1242
1403
|
hasDefault: true;
|
|
1243
|
-
isPrimaryKey:
|
|
1404
|
+
isPrimaryKey: false;
|
|
1244
1405
|
isAutoincrement: false;
|
|
1245
1406
|
hasRuntimeDefault: false;
|
|
1246
1407
|
enumValues: [string, ...string[]];
|
|
@@ -1248,6 +1409,23 @@ export declare const embeddingSettings: import("drizzle-orm/pg-core").PgTableWit
|
|
|
1248
1409
|
identity: undefined;
|
|
1249
1410
|
generated: undefined;
|
|
1250
1411
|
}, {}, {}>;
|
|
1412
|
+
workspaceId: import("drizzle-orm/pg-core").PgColumn<{
|
|
1413
|
+
name: "workspace_id";
|
|
1414
|
+
tableName: "embedding_settings";
|
|
1415
|
+
dataType: "string";
|
|
1416
|
+
columnType: "PgUUID";
|
|
1417
|
+
data: string;
|
|
1418
|
+
driverParam: string;
|
|
1419
|
+
notNull: true;
|
|
1420
|
+
hasDefault: true;
|
|
1421
|
+
isPrimaryKey: true;
|
|
1422
|
+
isAutoincrement: false;
|
|
1423
|
+
hasRuntimeDefault: false;
|
|
1424
|
+
enumValues: undefined;
|
|
1425
|
+
baseColumn: never;
|
|
1426
|
+
identity: undefined;
|
|
1427
|
+
generated: undefined;
|
|
1428
|
+
}, {}, {}>;
|
|
1251
1429
|
enabled: import("drizzle-orm/pg-core").PgColumn<{
|
|
1252
1430
|
name: "enabled";
|
|
1253
1431
|
tableName: "embedding_settings";
|
|
@@ -1400,7 +1578,7 @@ export declare const workspaceSettings: import("drizzle-orm/pg-core").PgTableWit
|
|
|
1400
1578
|
driverParam: string;
|
|
1401
1579
|
notNull: true;
|
|
1402
1580
|
hasDefault: true;
|
|
1403
|
-
isPrimaryKey:
|
|
1581
|
+
isPrimaryKey: false;
|
|
1404
1582
|
isAutoincrement: false;
|
|
1405
1583
|
hasRuntimeDefault: false;
|
|
1406
1584
|
enumValues: [string, ...string[]];
|
|
@@ -1408,6 +1586,23 @@ export declare const workspaceSettings: import("drizzle-orm/pg-core").PgTableWit
|
|
|
1408
1586
|
identity: undefined;
|
|
1409
1587
|
generated: undefined;
|
|
1410
1588
|
}, {}, {}>;
|
|
1589
|
+
workspaceId: import("drizzle-orm/pg-core").PgColumn<{
|
|
1590
|
+
name: "workspace_id";
|
|
1591
|
+
tableName: "workspace_settings";
|
|
1592
|
+
dataType: "string";
|
|
1593
|
+
columnType: "PgUUID";
|
|
1594
|
+
data: string;
|
|
1595
|
+
driverParam: string;
|
|
1596
|
+
notNull: true;
|
|
1597
|
+
hasDefault: true;
|
|
1598
|
+
isPrimaryKey: true;
|
|
1599
|
+
isAutoincrement: false;
|
|
1600
|
+
hasRuntimeDefault: false;
|
|
1601
|
+
enumValues: undefined;
|
|
1602
|
+
baseColumn: never;
|
|
1603
|
+
identity: undefined;
|
|
1604
|
+
generated: undefined;
|
|
1605
|
+
}, {}, {}>;
|
|
1411
1606
|
timezone: import("drizzle-orm/pg-core").PgColumn<{
|
|
1412
1607
|
name: "timezone";
|
|
1413
1608
|
tableName: "workspace_settings";
|
|
@@ -1483,6 +1678,23 @@ export declare const sessions: import("drizzle-orm/pg-core").PgTableWithColumns<
|
|
|
1483
1678
|
identity: undefined;
|
|
1484
1679
|
generated: undefined;
|
|
1485
1680
|
}, {}, {}>;
|
|
1681
|
+
workspaceId: import("drizzle-orm/pg-core").PgColumn<{
|
|
1682
|
+
name: "workspace_id";
|
|
1683
|
+
tableName: "sessions";
|
|
1684
|
+
dataType: "string";
|
|
1685
|
+
columnType: "PgUUID";
|
|
1686
|
+
data: string;
|
|
1687
|
+
driverParam: string;
|
|
1688
|
+
notNull: true;
|
|
1689
|
+
hasDefault: true;
|
|
1690
|
+
isPrimaryKey: false;
|
|
1691
|
+
isAutoincrement: false;
|
|
1692
|
+
hasRuntimeDefault: false;
|
|
1693
|
+
enumValues: undefined;
|
|
1694
|
+
baseColumn: never;
|
|
1695
|
+
identity: undefined;
|
|
1696
|
+
generated: undefined;
|
|
1697
|
+
}, {}, {}>;
|
|
1486
1698
|
tokenHash: import("drizzle-orm/pg-core").PgColumn<{
|
|
1487
1699
|
name: "token_hash";
|
|
1488
1700
|
tableName: "sessions";
|
|
@@ -1571,6 +1783,7 @@ export declare const sessions: import("drizzle-orm/pg-core").PgTableWithColumns<
|
|
|
1571
1783
|
};
|
|
1572
1784
|
dialect: "pg";
|
|
1573
1785
|
}>;
|
|
1786
|
+
export type Workspace = typeof workspaces.$inferSelect;
|
|
1574
1787
|
export type Project = typeof projects.$inferSelect;
|
|
1575
1788
|
export type Entity = typeof entities.$inferSelect;
|
|
1576
1789
|
export type Edge = typeof edges.$inferSelect;
|
package/dist/db/schema.js
CHANGED
|
@@ -24,9 +24,26 @@ export const ENTITY_KINDS = ["task", "note", "comment", "feedback"];
|
|
|
24
24
|
export const FEEDBACK_CATEGORIES = ["bug", "feature", "friction", "idea"];
|
|
25
25
|
export const ACTOR_KINDS = ["human", "agent", "system"];
|
|
26
26
|
export const EDGE_KINDS = ["blocks", "references", "parent_of", "supersedes"];
|
|
27
|
+
// The single workspace every row belongs to until multi-tenant mode lands.
|
|
28
|
+
// Fixed so migrations, defaults and code agree without a lookup.
|
|
29
|
+
export const DEFAULT_WORKSPACE_ID = "00000000-0000-4000-8000-000000000001";
|
|
30
|
+
export const workspaces = pgTable("workspaces", {
|
|
31
|
+
id: uuid("id").primaryKey().defaultRandom(),
|
|
32
|
+
slug: text("slug").notNull(),
|
|
33
|
+
name: text("name").notNull(),
|
|
34
|
+
createdAt: timestamp("created_at", { withTimezone: true }).notNull().defaultNow(),
|
|
35
|
+
updatedAt: timestamp("updated_at", { withTimezone: true }).notNull().defaultNow()
|
|
36
|
+
}, (t) => ({
|
|
37
|
+
slugIdx: uniqueIndex("workspaces_slug_idx").on(t.slug)
|
|
38
|
+
}));
|
|
39
|
+
const workspaceRef = () => uuid("workspace_id")
|
|
40
|
+
.notNull()
|
|
41
|
+
.default(DEFAULT_WORKSPACE_ID)
|
|
42
|
+
.references(() => workspaces.id);
|
|
27
43
|
export const PROJECT_STATUSES = ["planned", "active", "watching", "paused", "archived"];
|
|
28
44
|
export const projects = pgTable("projects", {
|
|
29
45
|
id: uuid("id").primaryKey().defaultRandom(),
|
|
46
|
+
workspaceId: workspaceRef(),
|
|
30
47
|
key: text("key").notNull(),
|
|
31
48
|
name: text("name").notNull(),
|
|
32
49
|
status: text("status").notNull().default("active"),
|
|
@@ -40,10 +57,11 @@ export const projects = pgTable("projects", {
|
|
|
40
57
|
createdAt: timestamp("created_at", { withTimezone: true }).notNull().defaultNow(),
|
|
41
58
|
updatedAt: timestamp("updated_at", { withTimezone: true }).notNull().defaultNow()
|
|
42
59
|
}, (t) => ({
|
|
43
|
-
|
|
60
|
+
wsKeyIdx: uniqueIndex("projects_ws_key_unique").on(t.workspaceId, t.key)
|
|
44
61
|
}));
|
|
45
62
|
export const entities = pgTable("entities", {
|
|
46
63
|
id: uuid("id").primaryKey().defaultRandom(),
|
|
64
|
+
workspaceId: workspaceRef(),
|
|
47
65
|
projectId: uuid("project_id").references(() => projects.id, { onDelete: "set null" }),
|
|
48
66
|
kind: text("kind").notNull(),
|
|
49
67
|
title: text("title"),
|
|
@@ -82,7 +100,10 @@ export const entities = pgTable("entities", {
|
|
|
82
100
|
projectKindCreatedIdx: index("entities_project_kind_created_idx").on(t.projectId, t.kind, t.createdAt),
|
|
83
101
|
parentIdx: index("entities_parent_idx").on(t.parentId),
|
|
84
102
|
completedAtIdx: index("entities_completed_at_idx").on(t.completedAt),
|
|
85
|
-
|
|
103
|
+
wsIdempotencyIdx: uniqueIndex("entities_ws_idem_unique")
|
|
104
|
+
.on(t.workspaceId, t.idempotencyKey)
|
|
105
|
+
.where(sql `${t.idempotencyKey} IS NOT NULL`),
|
|
106
|
+
wsKindCreatedIdx: index("entities_ws_kind_created_idx").on(t.workspaceId, t.kind, t.createdAt)
|
|
86
107
|
}));
|
|
87
108
|
export const edges = pgTable("edges", {
|
|
88
109
|
fromId: uuid("from_id")
|
|
@@ -102,6 +123,7 @@ export const RECURRENCE_ANCHORS = ["scheduled", "completion"];
|
|
|
102
123
|
export const RECURRENCE_EXCEPTION_ACTIONS = ["skipped", "cancelled", "modified"];
|
|
103
124
|
export const recurrenceRules = pgTable("recurrence_rules", {
|
|
104
125
|
id: uuid("id").primaryKey().defaultRandom(),
|
|
126
|
+
workspaceId: workspaceRef(),
|
|
105
127
|
seriesId: uuid("series_id")
|
|
106
128
|
.notNull()
|
|
107
129
|
.references(() => entities.id, { onDelete: "cascade" }),
|
|
@@ -147,6 +169,7 @@ export const recurrenceExceptions = pgTable("recurrence_exceptions", {
|
|
|
147
169
|
}));
|
|
148
170
|
export const tokens = pgTable("tokens", {
|
|
149
171
|
id: uuid("id").primaryKey().defaultRandom(),
|
|
172
|
+
workspaceId: workspaceRef(),
|
|
150
173
|
name: text("name").notNull(),
|
|
151
174
|
tokenHash: text("token_hash").notNull(),
|
|
152
175
|
prefix: text("prefix").notNull(),
|
|
@@ -158,7 +181,10 @@ export const tokens = pgTable("tokens", {
|
|
|
158
181
|
createdIdx: index("tokens_created_idx").on(t.createdAt)
|
|
159
182
|
}));
|
|
160
183
|
export const embeddingSettings = pgTable("embedding_settings", {
|
|
161
|
-
|
|
184
|
+
// Constant discriminator kept from the singleton era; the row key is the
|
|
185
|
+
// workspace (migration 0029).
|
|
186
|
+
id: text("id").notNull().default("default"),
|
|
187
|
+
workspaceId: workspaceRef().primaryKey(),
|
|
162
188
|
enabled: boolean("enabled").notNull().default(true),
|
|
163
189
|
provider: text("provider").notNull().default("openai"),
|
|
164
190
|
model: text("model").notNull().default("text-embedding-3-small"),
|
|
@@ -169,7 +195,8 @@ export const embeddingSettings = pgTable("embedding_settings", {
|
|
|
169
195
|
updatedAt: timestamp("updated_at", { withTimezone: true }).notNull().defaultNow()
|
|
170
196
|
});
|
|
171
197
|
export const workspaceSettings = pgTable("workspace_settings", {
|
|
172
|
-
id: text("id").
|
|
198
|
+
id: text("id").notNull().default("default"),
|
|
199
|
+
workspaceId: workspaceRef().primaryKey(),
|
|
173
200
|
timezone: text("timezone").notNull().default("UTC"),
|
|
174
201
|
createdAt: timestamp("created_at", { withTimezone: true }).notNull().defaultNow(),
|
|
175
202
|
updatedAt: timestamp("updated_at", { withTimezone: true }).notNull().defaultNow()
|
|
@@ -179,6 +206,7 @@ export const workspaceSettings = pgTable("workspace_settings", {
|
|
|
179
206
|
// password (env BOTNOTE_PASSWORD) and we mint a row + set the cookie.
|
|
180
207
|
export const sessions = pgTable("sessions", {
|
|
181
208
|
id: uuid("id").primaryKey().defaultRandom(),
|
|
209
|
+
workspaceId: workspaceRef(),
|
|
182
210
|
tokenHash: text("token_hash").notNull(),
|
|
183
211
|
expiresAt: timestamp("expires_at", { withTimezone: true }).notNull(),
|
|
184
212
|
userAgent: text("user_agent"),
|
package/dist/db/schema.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/db/schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAClC,OAAO,EACL,OAAO,EACP,UAAU,EACV,KAAK,EACL,OAAO,EACP,KAAK,EACL,OAAO,EACP,UAAU,EACV,IAAI,EACJ,SAAS,EACT,WAAW,EACX,IAAI,EACL,MAAM,qBAAqB,CAAC;AAE7B,MAAM,CAAC,MAAM,iBAAiB,GAAG,GAAG,CAAC;AAErC,MAAM,MAAM,GAAG,UAAU,CAAyC;IAChE,QAAQ;QACN,OAAO,UAAU,iBAAiB,GAAG,CAAC;IACxC,CAAC;IACD,QAAQ,CAAC,KAAe;QACtB,OAAO,IAAI,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;IAChC,CAAC;IACD,UAAU,CAAC,KAAa;QACtB,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QAC5D,IAAI,CAAC,OAAO;YAAE,OAAO,EAAE,CAAC;QACxB,OAAO,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;IAClD,CAAC;CACF,CAAC,CAAC;AAEH,MAAM,QAAQ,GAAG,UAAU,CAAmB;IAC5C,QAAQ;QACN,OAAO,UAAU,CAAC;IACpB,CAAC;CACF,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,UAAU,CAAU,CAAC;AAG7E,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,CAAU,CAAC;AAGnF,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,CAAU,CAAC;AAGjE,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,QAAQ,EAAE,YAAY,EAAE,WAAW,EAAE,YAAY,CAAU,CAAC;AAGvF,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,SAAS,EAAE,QAAQ,EAAE,UAAU,EAAE,QAAQ,EAAE,UAAU,CAAU,CAAC;AAGjG,MAAM,CAAC,MAAM,QAAQ,GAAG,OAAO,CAC7B,UAAU,EACV;IACE,EAAE,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,CAAC,aAAa,EAAE;IAC3C,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE;IAC1B,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE;IAC5B,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC;IAClD,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC;IACjD,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC;IAC9C,QAAQ,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;IACjD,UAAU,EAAE,SAAS,CAAC,aAAa,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC;IAC5D,wEAAwE;IACxE,yDAAyD;IACzD,OAAO,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IACjD,SAAS,EAAE,SAAS,CAAC,YAAY,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,UAAU,EAAE;IACjF,SAAS,EAAE,SAAS,CAAC,YAAY,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,UAAU,EAAE;CAClF,EACD,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACN,MAAM,EAAE,WAAW,CAAC,kBAAkB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC;CAClD,CAAC,CACH,CAAC;AAEF,MAAM,CAAC,MAAM,QAAQ,GAAG,OAAO,CAC7B,UAAU,EACV;IACE,EAAE,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,CAAC,aAAa,EAAE;IAC3C,SAAS,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,UAAU,EAAE,CAAC;IACrF,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE;IAC5B,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC;IACpB,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;IACxC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC;SACf,KAAK,EAAE;SACP,OAAO,EAAE;SACT,OAAO,CAAC,GAAG,CAAA,cAAc,CAAC;IAC7B,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC;IAChD,SAAS,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC;IACxD,cAAc,EAAE,IAAI,CAAC,iBAAiB,CAAC;IACvC,QAAQ,EAAE,IAAI,CAAC,WAAW,CAAC;IAC3B,OAAO,EAAE,QAAQ,CAAC,UAAU,CAAC;IAC7B,OAAO,EAAE,MAAM,CAAC,UAAU,CAAC;IAC3B,QAAQ,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;IACjD,KAAK,EAAE,SAAS,CAAC,QAAQ,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC;IAClD,QAAQ,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC;IACpD,UAAU,EAAE,OAAO,CAAC,aAAa,CAAC;IAClC,MAAM,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;IAClD,yEAAyE;IACzE,iEAAiE;IACjE,uEAAuE;IACvE,YAAY;IACZ,WAAW,EAAE,SAAS,CAAC,cAAc,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC;IAC9D,qEAAqE;IACrE,kEAAkE;IAClE,cAAc,EAAE,SAAS,CAAC,kBAAkB,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC;IACrE,WAAW,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IACzD,yEAAyE;IACzE,oEAAoE;IACpE,SAAS,EAAE,SAAS,CAAC,YAAY,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC;IAC1D,SAAS,EAAE,SAAS,CAAC,YAAY,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,UAAU,EAAE;IACjF,SAAS,EAAE,SAAS,CAAC,YAAY,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,UAAU,EAAE;CAClF,EACD,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACN,iBAAiB,EAAE,KAAK,CAAC,8BAA8B,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,SAAS,CAAC;IACrF,qBAAqB,EAAE,KAAK,CAAC,mCAAmC,CAAC,CAAC,EAAE,CAClE,CAAC,CAAC,SAAS,EACX,CAAC,CAAC,IAAI,EACN,CAAC,CAAC,SAAS,CACZ;IACD,SAAS,EAAE,KAAK,CAAC,qBAAqB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC;IACtD,cAAc,EAAE,KAAK,CAAC,2BAA2B,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC;IACpE,cAAc,EAAE,WAAW,CAAC,0BAA0B,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,cAAc,CAAC;CAC7E,CAAC,CACH,CAAC;AAEF,MAAM,CAAC,MAAM,KAAK,GAAG,OAAO,CAC1B,OAAO,EACP;IACE,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC;SACpB,OAAO,EAAE;SACT,UAAU,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC;IACzD,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC;SAChB,OAAO,EAAE;SACT,UAAU,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC;IACzD,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE;IAC5B,SAAS,EAAE,SAAS,CAAC,YAAY,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,UAAU,EAAE;CAClF,EACD,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACN,EAAE,EAAE,UAAU,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;IACvD,KAAK,EAAE,KAAK,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC;IAC/C,OAAO,EAAE,KAAK,CAAC,gBAAgB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC;CACtD,CAAC,CACH,CAAC;AAEF,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,WAAW,EAAE,YAAY,CAAU,CAAC;AAGvE,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAAC,SAAS,EAAE,WAAW,EAAE,UAAU,CAAU,CAAC;AAG1F,MAAM,CAAC,MAAM,eAAe,GAAG,OAAO,CACpC,kBAAkB,EAClB;IACE,EAAE,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,CAAC,aAAa,EAAE;IAC3C,QAAQ,EAAE,IAAI,CAAC,WAAW,CAAC;SACxB,OAAO,EAAE;SACT,UAAU,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC;IACzD,mBAAmB,EAAE,IAAI,CAAC,uBAAuB,CAAC,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,EAAE,EAAE;QAC/E,QAAQ,EAAE,UAAU;KACrB,CAAC;IACF,OAAO,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;IACnD,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE;IAC9B,OAAO,EAAE,SAAS,CAAC,SAAS,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE;IAC/D,QAAQ,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;IACnD,MAAM,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;IAClD,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,WAAW,CAAC;IACrD,iBAAiB,EAAE,OAAO,CAAC,qBAAqB,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IACtE,cAAc,EAAE,OAAO,CAAC,iBAAiB,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IAC/D,gBAAgB,EAAE,SAAS,CAAC,oBAAoB,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC;IACzE,gBAAgB,EAAE,SAAS,CAAC,oBAAoB,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC;IACzE,OAAO,EAAE,SAAS,CAAC,UAAU,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC;IACtD,SAAS,EAAE,SAAS,CAAC,YAAY,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,UAAU,EAAE;IACjF,SAAS,EAAE,SAAS,CAAC,YAAY,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,UAAU,EAAE;CAClF,EACD,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACN,6EAA6E;IAC7E,4EAA4E;IAC5E,SAAS,EAAE,WAAW,CAAC,6BAA6B,CAAC;SAClD,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC;SACd,KAAK,CAAC,GAAG,CAAA,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC;IAC3B,oBAAoB,EAAE,KAAK,CAAC,yCAAyC,CAAC,CAAC,EAAE,CACvE,CAAC,CAAC,mBAAmB,CACtB;IACD,iBAAiB,EAAE,KAAK,CAAC,sCAAsC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,gBAAgB,CAAC;IACvF,UAAU,EAAE,KAAK,CAAC,8BAA8B,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,gBAAgB,CAAC;CACpF,CAAC,CACH,CAAC;AAEF,MAAM,CAAC,MAAM,oBAAoB,GAAG,OAAO,CACzC,uBAAuB,EACvB;IACE,EAAE,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,CAAC,aAAa,EAAE;IAC3C,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC;SACpB,OAAO,EAAE;SACT,UAAU,CAAC,GAAG,EAAE,CAAC,eAAe,CAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC;IAChE,YAAY,EAAE,SAAS,CAAC,eAAe,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE;IAC1E,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,OAAO,EAAE;IAChC,QAAQ,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,UAAU,EAAE,CAAC;IACnF,QAAQ,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;IACjD,SAAS,EAAE,SAAS,CAAC,YAAY,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,UAAU,EAAE;CAClF,EACD,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACN,iBAAiB,EAAE,KAAK,CAAC,2CAA2C,CAAC,CAAC,EAAE,CACtE,CAAC,CAAC,MAAM,EACR,CAAC,CAAC,YAAY,CACf;IACD,SAAS,EAAE,KAAK,CAAC,kCAAkC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC;CACpE,CAAC,CACH,CAAC;AAEF,MAAM,CAAC,MAAM,MAAM,GAAG,OAAO,CAC3B,QAAQ,EACR;IACE,EAAE,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,CAAC,aAAa,EAAE;IAC3C,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE;IAC5B,SAAS,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC,OAAO,EAAE;IACvC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,OAAO,EAAE;IAChC,SAAS,EAAE,IAAI,CAAC,WAAW,CAAC;IAC5B,UAAU,EAAE,SAAS,CAAC,cAAc,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC;IAC7D,SAAS,EAAE,SAAS,CAAC,YAAY,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,UAAU,EAAE;CAClF,EACD,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACN,YAAY,EAAE,WAAW,CAAC,uBAAuB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;IAClE,UAAU,EAAE,KAAK,CAAC,oBAAoB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;CACxD,CAAC,CACH,CAAC;AAEF,MAAM,CAAC,MAAM,iBAAiB,GAAG,OAAO,CAAC,oBAAoB,EAAE;IAC7D,EAAE,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC;IAC9C,OAAO,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;IACnD,QAAQ,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC;IACtD,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,wBAAwB,CAAC;IAChE,OAAO,EAAE,IAAI,CAAC,UAAU,CAAC;IACzB,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC;IACvB,UAAU,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,iBAAiB,CAAC;IACtE,SAAS,EAAE,SAAS,CAAC,YAAY,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,UAAU,EAAE;IACjF,SAAS,EAAE,SAAS,CAAC,YAAY,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,UAAU,EAAE;CAClF,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,iBAAiB,GAAG,OAAO,CAAC,oBAAoB,EAAE;IAC7D,EAAE,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC;IAC9C,QAAQ,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;IACnD,SAAS,EAAE,SAAS,CAAC,YAAY,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,UAAU,EAAE;IACjF,SAAS,EAAE,SAAS,CAAC,YAAY,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,UAAU,EAAE;CAClF,CAAC,CAAC;AAEH,yEAAyE;AACzE,+EAA+E;AAC/E,sEAAsE;AACtE,MAAM,CAAC,MAAM,QAAQ,GAAG,OAAO,CAC7B,UAAU,EACV;IACE,EAAE,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,CAAC,aAAa,EAAE;IAC3C,SAAS,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC,OAAO,EAAE;IACvC,SAAS,EAAE,SAAS,CAAC,YAAY,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE;IACpE,SAAS,EAAE,IAAI,CAAC,YAAY,CAAC;IAC7B,UAAU,EAAE,SAAS,CAAC,cAAc,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC;IAC7D,SAAS,EAAE,SAAS,CAAC,YAAY,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,UAAU,EAAE;CAClF,EACD,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACN,YAAY,EAAE,WAAW,CAAC,yBAAyB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;IACpE,UAAU,EAAE,KAAK,CAAC,yBAAyB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;CAC7D,CAAC,CACH,CAAC"}
|
|
1
|
+
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/db/schema.ts"],"names":[],"mappings":"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"}
|