@sourcepress/core 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,4 @@
1
+
2
+ > @sourcepress/core@0.1.0 build /Users/fabianvontiedemann/Developer/org/sourcepress/packages/core
3
+ > tsc
4
+
@@ -0,0 +1,15 @@
1
+
2
+ > @sourcepress/core@0.1.0 test /Users/fabianvontiedemann/Developer/org/sourcepress/packages/core
3
+ > vitest run
4
+
5
+
6
+ RUN v3.2.4 /Users/fabianvontiedemann/Developer/org/sourcepress/packages/core
7
+
8
+ ✓ src/__tests__/validate.test.ts (3 tests) 56ms
9
+ ✓ src/__tests__/schema.test.ts (3 tests) 3ms
10
+
11
+ Test Files 2 passed (2)
12
+ Tests 6 passed (6)
13
+ Start at 00:19:47
14
+ Duration 1.49s (transform 41ms, setup 0ms, collect 76ms, tests 58ms, environment 0ms, prepare 351ms)
15
+
package/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 SourcePress Contributors
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=schema.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema.test.d.ts","sourceRoot":"","sources":["../../src/__tests__/schema.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,54 @@
1
+ import { describe, expect, it } from "vitest";
2
+ import { collectionToZod } from "../schema.js";
3
+ describe("collectionToZod", () => {
4
+ it("creates a Zod schema from a collection definition", () => {
5
+ const collection = {
6
+ name: "Posts",
7
+ path: "content/posts",
8
+ format: "mdx",
9
+ fields: {
10
+ title: { type: "string", required: true },
11
+ draft: { type: "boolean", default: true },
12
+ views: { type: "number" },
13
+ },
14
+ };
15
+ const schema = collectionToZod(collection);
16
+ const valid = schema.safeParse({ title: "Hello", draft: false, views: 10 });
17
+ expect(valid.success).toBe(true);
18
+ const invalid = schema.safeParse({ draft: true });
19
+ expect(invalid.success).toBe(false);
20
+ });
21
+ it("handles relation fields", () => {
22
+ const collection = {
23
+ name: "Posts",
24
+ path: "content/posts",
25
+ format: "mdx",
26
+ fields: {
27
+ title: { type: "string", required: true },
28
+ author: { type: "relation-one", collection: "team" },
29
+ tags: { type: "relation-many", collection: "tags" },
30
+ },
31
+ };
32
+ const schema = collectionToZod(collection);
33
+ const valid = schema.safeParse({ title: "Hello", author: "anna", tags: ["tech", "ai"] });
34
+ expect(valid.success).toBe(true);
35
+ });
36
+ it("handles image fields", () => {
37
+ const collection = {
38
+ name: "Posts",
39
+ path: "content/posts",
40
+ format: "mdx",
41
+ fields: {
42
+ hero: { type: "image", required: true },
43
+ gallery: { type: "image", multiple: true },
44
+ },
45
+ };
46
+ const schema = collectionToZod(collection);
47
+ const valid = schema.safeParse({
48
+ hero: "/assets/hero.webp",
49
+ gallery: ["/assets/1.webp", "/assets/2.webp"],
50
+ });
51
+ expect(valid.success).toBe(true);
52
+ });
53
+ });
54
+ //# sourceMappingURL=schema.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema.test.js","sourceRoot":"","sources":["../../src/__tests__/schema.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=validate.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validate.test.d.ts","sourceRoot":"","sources":["../../src/__tests__/validate.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,41 @@
1
+ import { describe, expect, it } from "vitest";
2
+ import { validateConfig } from "../validate.js";
3
+ describe("validateConfig", () => {
4
+ it("accepts a valid minimal config", () => {
5
+ const config = {
6
+ repository: { owner: "acme", repo: "site", branch: "main" },
7
+ ai: { provider: "anthropic", model: "claude-sonnet-4-5-20250514" },
8
+ collections: {},
9
+ knowledge: { path: "knowledge/", graph: { backend: "local" } },
10
+ intent: { path: "intent/" },
11
+ media: { storage: "git", path: "assets/", registry: "media.json" },
12
+ jobs: { backend: "in-process" },
13
+ evals: { threshold: 70 },
14
+ approval: { provider: "github-pr", rules: {} },
15
+ auth: { provider: "github" },
16
+ cache: { backend: "sqlite" },
17
+ sync: { reconciliation_interval: "1h" },
18
+ };
19
+ const result = validateConfig(config);
20
+ expect(result.success).toBe(true);
21
+ });
22
+ it("rejects config missing repository", () => {
23
+ const result = validateConfig({});
24
+ expect(result.success).toBe(false);
25
+ if (!result.success) {
26
+ expect(result.errors.length).toBeGreaterThan(0);
27
+ }
28
+ });
29
+ it("rejects invalid ai provider", () => {
30
+ const config = {
31
+ repository: { owner: "acme", repo: "site", branch: "main" },
32
+ ai: { provider: "invalid-provider", model: "gpt-4" },
33
+ collections: {},
34
+ knowledge: { path: "knowledge/", graph: { backend: "local" } },
35
+ intent: { path: "intent/" },
36
+ };
37
+ const result = validateConfig(config);
38
+ expect(result.success).toBe(false);
39
+ });
40
+ });
41
+ //# sourceMappingURL=validate.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validate.test.js","sourceRoot":"","sources":["../../src/__tests__/validate.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAEhD,QAAQ,CAAC,gBAAgB,EAAE,GAAG,EAAE;IAC/B,EAAE,CAAC,gCAAgC,EAAE,GAAG,EAAE;QACzC,MAAM,MAAM,GAAG;YACd,UAAU,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE;YAC3D,EAAE,EAAE,EAAE,QAAQ,EAAE,WAAoB,EAAE,KAAK,EAAE,4BAA4B,EAAE;YAC3E,WAAW,EAAE,EAAE;YACf,SAAS,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,OAAgB,EAAE,EAAE;YACvE,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;YAC3B,KAAK,EAAE,EAAE,OAAO,EAAE,KAAc,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,YAAY,EAAE;YAC3E,IAAI,EAAE,EAAE,OAAO,EAAE,YAAqB,EAAE;YACxC,KAAK,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE;YACxB,QAAQ,EAAE,EAAE,QAAQ,EAAE,WAAoB,EAAE,KAAK,EAAE,EAAE,EAAE;YACvD,IAAI,EAAE,EAAE,QAAQ,EAAE,QAAiB,EAAE;YACrC,KAAK,EAAE,EAAE,OAAO,EAAE,QAAiB,EAAE;YACrC,IAAI,EAAE,EAAE,uBAAuB,EAAE,IAAI,EAAE;SACvC,CAAC;QACF,MAAM,MAAM,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC;QACtC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACnC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,mCAAmC,EAAE,GAAG,EAAE;QAC5C,MAAM,MAAM,GAAG,cAAc,CAAC,EAAa,CAAC,CAAC;QAC7C,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACnC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACrB,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;QACjD,CAAC;IACF,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6BAA6B,EAAE,GAAG,EAAE;QACtC,MAAM,MAAM,GAAG;YACd,UAAU,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE;YAC3D,EAAE,EAAE,EAAE,QAAQ,EAAE,kBAAkB,EAAE,KAAK,EAAE,OAAO,EAAE;YACpD,WAAW,EAAE,EAAE;YACf,SAAS,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE;YAC9D,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;SAC3B,CAAC;QACF,MAAM,MAAM,GAAG,cAAc,CAAC,MAAiB,CAAC,CAAC;QACjD,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACpC,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC"}
@@ -0,0 +1,18 @@
1
+ import type { BooleanField, CollectionDefinition, ImageField, NumberField, RelationManyField, RelationOneField, SourcePressConfig, StringField } from "./types.js";
2
+ export declare function defineConfig(config: SourcePressConfig): SourcePressConfig;
3
+ export declare function collection(def: CollectionDefinition): CollectionDefinition;
4
+ export declare const field: {
5
+ string(opts?: Omit<StringField, "type">): StringField;
6
+ boolean(opts?: Omit<BooleanField, "type">): BooleanField;
7
+ number(opts?: Omit<NumberField, "type">): NumberField;
8
+ image(opts?: Omit<ImageField, "type">): ImageField;
9
+ };
10
+ export declare const relation: {
11
+ one(collectionName: string, opts?: {
12
+ required?: boolean;
13
+ }): RelationOneField;
14
+ many(collectionName: string, opts?: {
15
+ required?: boolean;
16
+ }): RelationManyField;
17
+ };
18
+ //# sourceMappingURL=config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACX,YAAY,EACZ,oBAAoB,EACpB,UAAU,EACV,WAAW,EACX,iBAAiB,EACjB,gBAAgB,EAChB,iBAAiB,EACjB,WAAW,EACX,MAAM,YAAY,CAAC;AAEpB,wBAAgB,YAAY,CAAC,MAAM,EAAE,iBAAiB,GAAG,iBAAiB,CAEzE;AAED,wBAAgB,UAAU,CAAC,GAAG,EAAE,oBAAoB,GAAG,oBAAoB,CAE1E;AAED,eAAO,MAAM,KAAK;kBACJ,IAAI,CAAC,WAAW,EAAE,MAAM,CAAC,GAAQ,WAAW;mBAG3C,IAAI,CAAC,YAAY,EAAE,MAAM,CAAC,GAAQ,YAAY;kBAG/C,IAAI,CAAC,WAAW,EAAE,MAAM,CAAC,GAAQ,WAAW;iBAG7C,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,GAAQ,UAAU;CAGtD,CAAC;AAEF,eAAO,MAAM,QAAQ;wBACA,MAAM,SAAQ;QAAE,QAAQ,CAAC,EAAE,OAAO,CAAA;KAAE,GAAQ,gBAAgB;yBAG3D,MAAM,SAAQ;QAAE,QAAQ,CAAC,EAAE,OAAO,CAAA;KAAE,GAAQ,iBAAiB;CAGlF,CAAC"}
package/dist/config.js ADDED
@@ -0,0 +1,29 @@
1
+ export function defineConfig(config) {
2
+ return config;
3
+ }
4
+ export function collection(def) {
5
+ return def;
6
+ }
7
+ export const field = {
8
+ string(opts = {}) {
9
+ return { type: "string", ...opts };
10
+ },
11
+ boolean(opts = {}) {
12
+ return { type: "boolean", ...opts };
13
+ },
14
+ number(opts = {}) {
15
+ return { type: "number", ...opts };
16
+ },
17
+ image(opts = {}) {
18
+ return { type: "image", ...opts };
19
+ },
20
+ };
21
+ export const relation = {
22
+ one(collectionName, opts = {}) {
23
+ return { type: "relation-one", collection: collectionName, ...opts };
24
+ },
25
+ many(collectionName, opts = {}) {
26
+ return { type: "relation-many", collection: collectionName, ...opts };
27
+ },
28
+ };
29
+ //# sourceMappingURL=config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAWA,MAAM,UAAU,YAAY,CAAC,MAAyB;IACrD,OAAO,MAAM,CAAC;AACf,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,GAAyB;IACnD,OAAO,GAAG,CAAC;AACZ,CAAC;AAED,MAAM,CAAC,MAAM,KAAK,GAAG;IACpB,MAAM,CAAC,OAAkC,EAAE;QAC1C,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,IAAI,EAAE,CAAC;IACpC,CAAC;IACD,OAAO,CAAC,OAAmC,EAAE;QAC5C,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,IAAI,EAAE,CAAC;IACrC,CAAC;IACD,MAAM,CAAC,OAAkC,EAAE;QAC1C,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,IAAI,EAAE,CAAC;IACpC,CAAC;IACD,KAAK,CAAC,OAAiC,EAAE;QACxC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI,EAAE,CAAC;IACnC,CAAC;CACD,CAAC;AAEF,MAAM,CAAC,MAAM,QAAQ,GAAG;IACvB,GAAG,CAAC,cAAsB,EAAE,OAA+B,EAAE;QAC5D,OAAO,EAAE,IAAI,EAAE,cAAc,EAAE,UAAU,EAAE,cAAc,EAAE,GAAG,IAAI,EAAE,CAAC;IACtE,CAAC;IACD,IAAI,CAAC,cAAsB,EAAE,OAA+B,EAAE;QAC7D,OAAO,EAAE,IAAI,EAAE,eAAe,EAAE,UAAU,EAAE,cAAc,EAAE,GAAG,IAAI,EAAE,CAAC;IACvE,CAAC;CACD,CAAC"}
@@ -0,0 +1,5 @@
1
+ export { defineConfig, collection, field, relation } from "./config.js";
2
+ export { validateConfig, type ValidationResult } from "./validate.js";
3
+ export { collectionToZod } from "./schema.js";
4
+ export type { SourcePressConfig, CollectionDefinition, FieldDefinition, StringField, BooleanField, NumberField, ImageField, RelationOneField, RelationManyField, Provenance, ContentFile, KnowledgeFile, Entity, GraphEdge, JobDefinition, JobFilter, JobStatus, MediaRef, MediaRegistry, MediaUploadInput, MediaConfig, ContentChange, ApprovalRequest, ApprovalStatus, StatusChangeHandler, ApprovalProvider, ApprovalRules, } from "./types.js";
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACxE,OAAO,EAAE,cAAc,EAAE,KAAK,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACtE,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC9C,YAAY,EACX,iBAAiB,EACjB,oBAAoB,EACpB,eAAe,EACf,WAAW,EACX,YAAY,EACZ,WAAW,EACX,UAAU,EACV,gBAAgB,EAChB,iBAAiB,EACjB,UAAU,EACV,WAAW,EACX,aAAa,EACb,MAAM,EACN,SAAS,EACT,aAAa,EACb,SAAS,EACT,SAAS,EACT,QAAQ,EACR,aAAa,EACb,gBAAgB,EAChB,WAAW,EACX,aAAa,EACb,eAAe,EACf,cAAc,EACd,mBAAmB,EACnB,gBAAgB,EAChB,aAAa,GACb,MAAM,YAAY,CAAC"}
package/dist/index.js ADDED
@@ -0,0 +1,4 @@
1
+ export { defineConfig, collection, field, relation } from "./config.js";
2
+ export { validateConfig } from "./validate.js";
3
+ export { collectionToZod } from "./schema.js";
4
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACxE,OAAO,EAAE,cAAc,EAAyB,MAAM,eAAe,CAAC;AACtE,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { z } from "zod";
2
+ import type { CollectionDefinition } from "./types.js";
3
+ export declare function collectionToZod(collection: CollectionDefinition): z.ZodObject<Record<string, z.ZodType>>;
4
+ //# sourceMappingURL=schema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../src/schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,oBAAoB,EAAmB,MAAM,YAAY,CAAC;AAwCxE,wBAAgB,eAAe,CAC9B,UAAU,EAAE,oBAAoB,GAC9B,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAQxC"}
package/dist/schema.js ADDED
@@ -0,0 +1,53 @@
1
+ import { z } from "zod";
2
+ function fieldToZod(fieldDef) {
3
+ switch (fieldDef.type) {
4
+ case "string": {
5
+ let schema = z.string();
6
+ if (fieldDef.default !== undefined)
7
+ schema = schema.pipe(z.string().default(fieldDef.default));
8
+ if (!fieldDef.required)
9
+ schema = z.string().optional();
10
+ return schema;
11
+ }
12
+ case "boolean": {
13
+ if (!fieldDef.required)
14
+ return z.boolean().optional();
15
+ return z.boolean();
16
+ }
17
+ case "number": {
18
+ if (!fieldDef.required)
19
+ return z.number().optional();
20
+ return z.number();
21
+ }
22
+ case "image": {
23
+ if (fieldDef.multiple) {
24
+ const schema = z.array(z.string());
25
+ if (!fieldDef.required)
26
+ return schema.optional();
27
+ return schema;
28
+ }
29
+ if (!fieldDef.required)
30
+ return z.string().optional();
31
+ return z.string();
32
+ }
33
+ case "relation-one": {
34
+ if (!fieldDef.required)
35
+ return z.string().optional();
36
+ return z.string();
37
+ }
38
+ case "relation-many": {
39
+ const schema = z.array(z.string());
40
+ if (!fieldDef.required)
41
+ return schema.optional();
42
+ return schema;
43
+ }
44
+ }
45
+ }
46
+ export function collectionToZod(collection) {
47
+ const shape = {};
48
+ for (const [fieldName, fieldDef] of Object.entries(collection.fields)) {
49
+ shape[fieldName] = fieldToZod(fieldDef);
50
+ }
51
+ return z.object(shape);
52
+ }
53
+ //# sourceMappingURL=schema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../src/schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,SAAS,UAAU,CAAC,QAAyB;IAC5C,QAAQ,QAAQ,CAAC,IAAI,EAAE,CAAC;QACvB,KAAK,QAAQ,CAAC,CAAC,CAAC;YACf,IAAI,MAAM,GAAc,CAAC,CAAC,MAAM,EAAE,CAAC;YACnC,IAAI,QAAQ,CAAC,OAAO,KAAK,SAAS;gBACjC,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;YAC5D,IAAI,CAAC,QAAQ,CAAC,QAAQ;gBAAE,MAAM,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC;YACvD,OAAO,MAAM,CAAC;QACf,CAAC;QACD,KAAK,SAAS,CAAC,CAAC,CAAC;YAChB,IAAI,CAAC,QAAQ,CAAC,QAAQ;gBAAE,OAAO,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC;YACtD,OAAO,CAAC,CAAC,OAAO,EAAE,CAAC;QACpB,CAAC;QACD,KAAK,QAAQ,CAAC,CAAC,CAAC;YACf,IAAI,CAAC,QAAQ,CAAC,QAAQ;gBAAE,OAAO,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC;YACrD,OAAO,CAAC,CAAC,MAAM,EAAE,CAAC;QACnB,CAAC;QACD,KAAK,OAAO,CAAC,CAAC,CAAC;YACd,IAAI,QAAQ,CAAC,QAAQ,EAAE,CAAC;gBACvB,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;gBACnC,IAAI,CAAC,QAAQ,CAAC,QAAQ;oBAAE,OAAO,MAAM,CAAC,QAAQ,EAAE,CAAC;gBACjD,OAAO,MAAM,CAAC;YACf,CAAC;YACD,IAAI,CAAC,QAAQ,CAAC,QAAQ;gBAAE,OAAO,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC;YACrD,OAAO,CAAC,CAAC,MAAM,EAAE,CAAC;QACnB,CAAC;QACD,KAAK,cAAc,CAAC,CAAC,CAAC;YACrB,IAAI,CAAC,QAAQ,CAAC,QAAQ;gBAAE,OAAO,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC;YACrD,OAAO,CAAC,CAAC,MAAM,EAAE,CAAC;QACnB,CAAC;QACD,KAAK,eAAe,CAAC,CAAC,CAAC;YACtB,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;YACnC,IAAI,CAAC,QAAQ,CAAC,QAAQ;gBAAE,OAAO,MAAM,CAAC,QAAQ,EAAE,CAAC;YACjD,OAAO,MAAM,CAAC;QACf,CAAC;IACF,CAAC;AACF,CAAC;AAED,MAAM,UAAU,eAAe,CAC9B,UAAgC;IAEhC,MAAM,KAAK,GAA8B,EAAE,CAAC;IAE5C,KAAK,MAAM,CAAC,SAAS,EAAE,QAAQ,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;QACvE,KAAK,CAAC,SAAS,CAAC,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC;IACzC,CAAC;IAED,OAAO,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AACxB,CAAC"}
@@ -0,0 +1,244 @@
1
+ export interface StringField {
2
+ type: "string";
3
+ required?: boolean;
4
+ default?: string;
5
+ }
6
+ export interface BooleanField {
7
+ type: "boolean";
8
+ required?: boolean;
9
+ default?: boolean;
10
+ }
11
+ export interface NumberField {
12
+ type: "number";
13
+ required?: boolean;
14
+ default?: number;
15
+ }
16
+ export interface ImageField {
17
+ type: "image";
18
+ required?: boolean;
19
+ multiple?: boolean;
20
+ }
21
+ export interface RelationOneField {
22
+ type: "relation-one";
23
+ collection: string;
24
+ required?: boolean;
25
+ }
26
+ export interface RelationManyField {
27
+ type: "relation-many";
28
+ collection: string;
29
+ required?: boolean;
30
+ }
31
+ export type FieldDefinition = StringField | BooleanField | NumberField | ImageField | RelationOneField | RelationManyField;
32
+ export interface CollectionDefinition {
33
+ name: string;
34
+ path: string;
35
+ format: "mdx" | "md" | "yaml" | "json";
36
+ fields: Record<string, FieldDefinition>;
37
+ }
38
+ export interface SourcePressConfig {
39
+ repository: {
40
+ owner: string;
41
+ repo: string;
42
+ branch: string;
43
+ content_path?: string;
44
+ };
45
+ ai: {
46
+ provider: "anthropic" | "openai" | "local";
47
+ model: string;
48
+ daily_limit_usd?: number;
49
+ warn_at_usd?: number;
50
+ };
51
+ collections: Record<string, CollectionDefinition>;
52
+ knowledge: {
53
+ path: string;
54
+ graph: {
55
+ backend: "local" | "vectorize" | "turso";
56
+ };
57
+ ingestion?: {
58
+ scraping?: {
59
+ respectRobotsTxt?: boolean;
60
+ rateLimitMs?: number;
61
+ };
62
+ };
63
+ };
64
+ intent: {
65
+ path: string;
66
+ };
67
+ media?: {
68
+ storage: "git" | "r2" | "s3";
69
+ path: string;
70
+ registry: string;
71
+ allowedTypes?: string[];
72
+ maxSizeMb?: number;
73
+ transform?: {
74
+ formats?: string[];
75
+ sizes?: number[];
76
+ };
77
+ };
78
+ jobs?: {
79
+ backend: "in-process" | "queue" | "durable-objects";
80
+ };
81
+ evals?: {
82
+ threshold: number;
83
+ auto_approve?: boolean;
84
+ };
85
+ approval?: ApprovalRules;
86
+ auth?: {
87
+ provider: "github" | "api-key" | "custom";
88
+ };
89
+ cache?: {
90
+ backend: "sqlite" | "d1" | "memory";
91
+ };
92
+ sync?: {
93
+ reconciliation_interval: string;
94
+ };
95
+ }
96
+ export interface ContentChange {
97
+ collection: string;
98
+ slug: string;
99
+ path: string;
100
+ action: "create" | "update" | "delete";
101
+ content: string;
102
+ frontmatter: Record<string, unknown>;
103
+ provenance: Provenance;
104
+ }
105
+ export interface ApprovalRequest {
106
+ id: string;
107
+ change: ContentChange;
108
+ status: "pending" | "approved" | "rejected";
109
+ submitted_at: string;
110
+ submitted_by: string;
111
+ reviewed_by?: string;
112
+ reviewed_at?: string;
113
+ review_comment?: string;
114
+ pr_url?: string;
115
+ pr_number?: number;
116
+ }
117
+ export type ApprovalStatus = "pending" | "approved" | "rejected";
118
+ export type StatusChangeHandler = (id: string, status: ApprovalStatus, by: string) => void;
119
+ export interface ApprovalProvider {
120
+ submit(change: ContentChange): Promise<ApprovalRequest>;
121
+ status(id: string): Promise<ApprovalStatus>;
122
+ approve(id: string, by: string, comment?: string): Promise<void>;
123
+ reject(id: string, by: string, reason: string): Promise<void>;
124
+ pending(): Promise<ApprovalRequest[]>;
125
+ onStatusChange(callback: StatusChangeHandler): void;
126
+ }
127
+ export interface ApprovalRules {
128
+ provider: "github-pr" | "api" | "auto";
129
+ rules: Record<string, "pr" | "direct">;
130
+ auto_approve?: {
131
+ enabled: boolean;
132
+ min_score: number;
133
+ };
134
+ }
135
+ /**
136
+ * Provenance metadata for content traceability.
137
+ * Satisfies EU AI Act transparency requirements:
138
+ * - AI attribution (generated_by, prompt_version)
139
+ * - Human oversight (approved_by, approved_at)
140
+ * - Source traceability (source_files)
141
+ * - Quality assessment (eval_score)
142
+ */
143
+ export interface Provenance {
144
+ generated_by: string;
145
+ generated_at: string;
146
+ source_files: string[];
147
+ prompt_version?: string;
148
+ eval_score?: number;
149
+ approved_by?: string;
150
+ approved_at?: string;
151
+ }
152
+ export interface ContentFile {
153
+ collection: string;
154
+ slug: string;
155
+ path: string;
156
+ frontmatter: Record<string, unknown>;
157
+ body: string;
158
+ provenance?: Provenance;
159
+ }
160
+ export interface KnowledgeFile {
161
+ path: string;
162
+ type: string;
163
+ quality: "structured" | "draft" | "thoughts";
164
+ quality_score: number;
165
+ entities: Entity[];
166
+ ingested_at: string;
167
+ source: "manual" | "url" | "document" | "transcript" | "scrape";
168
+ source_url?: string;
169
+ body: string;
170
+ }
171
+ export interface Entity {
172
+ type: string;
173
+ name: string;
174
+ aliases?: string[];
175
+ }
176
+ export interface GraphEdge {
177
+ from: string;
178
+ to: string;
179
+ relation_type: string;
180
+ weight: number;
181
+ }
182
+ export interface JobDefinition {
183
+ type: string;
184
+ params: Record<string, unknown>;
185
+ }
186
+ export interface JobFilter {
187
+ status?: JobStatus["status"];
188
+ type?: string;
189
+ limit?: number;
190
+ }
191
+ export interface JobStatus {
192
+ job_id: string;
193
+ type: string;
194
+ status: "queued" | "running" | "completed" | "failed" | "cancelled";
195
+ progress: {
196
+ completed: number;
197
+ total: number;
198
+ failed: number;
199
+ };
200
+ created_at: string;
201
+ started_at?: string;
202
+ completed_at?: string;
203
+ result?: unknown;
204
+ error?: string;
205
+ }
206
+ export interface MediaRef {
207
+ path: string;
208
+ content_type: string;
209
+ size_bytes: number;
210
+ hash: string;
211
+ width?: number;
212
+ height?: number;
213
+ format?: string;
214
+ alt?: string;
215
+ source: "uploaded" | "ai-generated" | "scraped" | "stock";
216
+ generated_by?: string;
217
+ prompt?: string;
218
+ uploaded_at: string;
219
+ uploaded_by: string;
220
+ variants?: Record<string, string>;
221
+ }
222
+ export type MediaRegistry = Record<string, MediaRef>;
223
+ export interface MediaUploadInput {
224
+ file: Buffer;
225
+ path: string;
226
+ content_type: string;
227
+ alt?: string;
228
+ source: MediaRef["source"];
229
+ generated_by?: string;
230
+ prompt?: string;
231
+ uploaded_by: string;
232
+ }
233
+ export interface MediaConfig {
234
+ storage: "git" | "r2" | "s3";
235
+ path: string;
236
+ registry: string;
237
+ allowedTypes?: string[];
238
+ maxSizeMb?: number;
239
+ transform?: {
240
+ formats?: string[];
241
+ sizes?: number[];
242
+ };
243
+ }
244
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/dist/types.js ADDED
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":""}