@lssm/example.versioned-knowledge-base 1.41.0 → 1.42.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (51) hide show
  1. package/.turbo/turbo-build$colon$bundle.log +47 -0
  2. package/.turbo/turbo-build.log +43 -18
  3. package/CHANGELOG.md +31 -0
  4. package/LICENSE +21 -0
  5. package/README.md +3 -0
  6. package/dist/docs/index.d.ts +1 -0
  7. package/dist/docs/index.js +1 -1
  8. package/dist/docs/versioned-knowledge-base.docblock.d.ts +1 -0
  9. package/dist/docs/versioned-knowledge-base.docblock.js +29 -18
  10. package/dist/docs/versioned-knowledge-base.docblock.js.map +1 -0
  11. package/dist/entities/index.d.ts +2 -0
  12. package/dist/entities/index.js +3 -1
  13. package/dist/entities/models.d.ts +139 -0
  14. package/dist/entities/models.d.ts.map +1 -0
  15. package/dist/entities/models.js +151 -1
  16. package/dist/entities/models.js.map +1 -0
  17. package/dist/events.d.ts +63 -0
  18. package/dist/events.d.ts.map +1 -0
  19. package/dist/events.js +124 -1
  20. package/dist/events.js.map +1 -0
  21. package/dist/example.d.ts +36 -0
  22. package/dist/example.d.ts.map +1 -0
  23. package/dist/example.js +42 -1
  24. package/dist/example.js.map +1 -0
  25. package/dist/handlers/index.d.ts +2 -0
  26. package/dist/handlers/index.js +3 -1
  27. package/dist/handlers/memory.handlers.d.ts +78 -0
  28. package/dist/handlers/memory.handlers.d.ts.map +1 -0
  29. package/dist/handlers/memory.handlers.js +104 -1
  30. package/dist/handlers/memory.handlers.js.map +1 -0
  31. package/dist/index.d.ts +9 -0
  32. package/dist/index.js +11 -1
  33. package/dist/operations/index.d.ts +2 -0
  34. package/dist/operations/index.js +3 -0
  35. package/dist/operations/kb.d.ts +267 -0
  36. package/dist/operations/kb.d.ts.map +1 -0
  37. package/dist/operations/kb.js +256 -0
  38. package/dist/operations/kb.js.map +1 -0
  39. package/dist/versioned-knowledge-base.feature.d.ts +7 -0
  40. package/dist/versioned-knowledge-base.feature.d.ts.map +1 -0
  41. package/dist/versioned-knowledge-base.feature.js +68 -1
  42. package/dist/versioned-knowledge-base.feature.js.map +1 -0
  43. package/package.json +29 -20
  44. package/src/events.ts +32 -12
  45. package/src/index.ts +1 -1
  46. package/src/{contracts → operations}/kb.ts +10 -5
  47. package/src/versioned-knowledge-base.feature.ts +10 -9
  48. package/tsconfig.tsbuildinfo +1 -1
  49. package/dist/contracts/index.js +0 -1
  50. package/dist/contracts/kb.js +0 -1
  51. /package/src/{contracts → operations}/index.ts +0 -0
package/dist/events.js CHANGED
@@ -1 +1,124 @@
1
- import{defineEvent as e,defineSchemaModel as t}from"@lssm/lib.contracts";import{ScalarTypeEnum as n}from"@lssm/lib.schema";const r=e({name:`kb.source.ingested`,version:1,description:`Source document ingested (immutable).`,payload:t({name:`KbSourceIngestedPayload`,description:`Emitted when a source document is ingested.`,fields:{sourceDocumentId:{type:n.String_unsecure(),isOptional:!1},jurisdiction:{type:n.String_unsecure(),isOptional:!1},hash:{type:n.String_unsecure(),isOptional:!1}}})}),i=e({name:`kb.ruleVersion.created`,version:1,description:`Rule version created (draft).`,payload:t({name:`KbRuleVersionCreatedPayload`,description:`Emitted when a rule version draft is created.`,fields:{ruleVersionId:{type:n.String_unsecure(),isOptional:!1},ruleId:{type:n.String_unsecure(),isOptional:!1},jurisdiction:{type:n.String_unsecure(),isOptional:!1},status:{type:n.String_unsecure(),isOptional:!1}}})}),a=e({name:`kb.ruleVersion.approved`,version:1,description:`Rule version approved (human verified).`,payload:t({name:`KbRuleVersionApprovedPayload`,description:`Emitted when a rule version is approved.`,fields:{ruleVersionId:{type:n.String_unsecure(),isOptional:!1},approver:{type:n.String_unsecure(),isOptional:!1}}})}),o=e({name:`kb.snapshot.published`,version:1,description:`KB snapshot published.`,payload:t({name:`KbSnapshotPublishedPayload`,description:`Emitted when a KB snapshot is published.`,fields:{snapshotId:{type:n.String_unsecure(),isOptional:!1},jurisdiction:{type:n.String_unsecure(),isOptional:!1},includedRuleVersionsCount:{type:n.Int_unsecure(),isOptional:!1}}})});export{a as KbRuleVersionApprovedEvent,i as KbRuleVersionCreatedEvent,o as KbSnapshotPublishedEvent,r as KbSourceIngestedEvent};
1
+ import { defineEvent, defineSchemaModel } from "@lssm/lib.contracts";
2
+ import { ScalarTypeEnum } from "@lssm/lib.schema";
3
+
4
+ //#region src/events.ts
5
+ const KbSourceIngestedPayload = defineSchemaModel({
6
+ name: "KbSourceIngestedPayload",
7
+ description: "Emitted when a source document is ingested.",
8
+ fields: {
9
+ sourceDocumentId: {
10
+ type: ScalarTypeEnum.String_unsecure(),
11
+ isOptional: false
12
+ },
13
+ jurisdiction: {
14
+ type: ScalarTypeEnum.String_unsecure(),
15
+ isOptional: false
16
+ },
17
+ hash: {
18
+ type: ScalarTypeEnum.String_unsecure(),
19
+ isOptional: false
20
+ }
21
+ }
22
+ });
23
+ const KbSourceIngestedEvent = defineEvent({
24
+ meta: {
25
+ key: "kb.source.ingested",
26
+ version: 1,
27
+ description: "Source document ingested (immutable).",
28
+ stability: "experimental",
29
+ owners: ["@examples"],
30
+ tags: ["knowledge"]
31
+ },
32
+ payload: KbSourceIngestedPayload
33
+ });
34
+ const KbRuleVersionCreatedPayload = defineSchemaModel({
35
+ name: "KbRuleVersionCreatedPayload",
36
+ description: "Emitted when a rule version draft is created.",
37
+ fields: {
38
+ ruleVersionId: {
39
+ type: ScalarTypeEnum.String_unsecure(),
40
+ isOptional: false
41
+ },
42
+ ruleId: {
43
+ type: ScalarTypeEnum.String_unsecure(),
44
+ isOptional: false
45
+ },
46
+ jurisdiction: {
47
+ type: ScalarTypeEnum.String_unsecure(),
48
+ isOptional: false
49
+ },
50
+ status: {
51
+ type: ScalarTypeEnum.String_unsecure(),
52
+ isOptional: false
53
+ }
54
+ }
55
+ });
56
+ const KbRuleVersionCreatedEvent = defineEvent({
57
+ meta: {
58
+ key: "kb.ruleVersion.created",
59
+ version: 1,
60
+ description: "Rule version created (draft).",
61
+ stability: "experimental",
62
+ owners: ["@examples"],
63
+ tags: ["knowledge"]
64
+ },
65
+ payload: KbRuleVersionCreatedPayload
66
+ });
67
+ const KbRuleVersionApprovedPayload = defineSchemaModel({
68
+ name: "KbRuleVersionApprovedPayload",
69
+ description: "Emitted when a rule version is approved.",
70
+ fields: {
71
+ ruleVersionId: {
72
+ type: ScalarTypeEnum.String_unsecure(),
73
+ isOptional: false
74
+ },
75
+ approver: {
76
+ type: ScalarTypeEnum.String_unsecure(),
77
+ isOptional: false
78
+ }
79
+ }
80
+ });
81
+ const KbRuleVersionApprovedEvent = defineEvent({
82
+ meta: {
83
+ key: "kb.ruleVersion.approved",
84
+ version: 1,
85
+ description: "Rule version approved (human verified).",
86
+ stability: "experimental",
87
+ owners: ["@examples"],
88
+ tags: ["knowledge"]
89
+ },
90
+ payload: KbRuleVersionApprovedPayload
91
+ });
92
+ const KbSnapshotPublishedPayload = defineSchemaModel({
93
+ name: "KbSnapshotPublishedPayload",
94
+ description: "Emitted when a KB snapshot is published.",
95
+ fields: {
96
+ snapshotId: {
97
+ type: ScalarTypeEnum.String_unsecure(),
98
+ isOptional: false
99
+ },
100
+ jurisdiction: {
101
+ type: ScalarTypeEnum.String_unsecure(),
102
+ isOptional: false
103
+ },
104
+ includedRuleVersionsCount: {
105
+ type: ScalarTypeEnum.Int_unsecure(),
106
+ isOptional: false
107
+ }
108
+ }
109
+ });
110
+ const KbSnapshotPublishedEvent = defineEvent({
111
+ meta: {
112
+ key: "kb.snapshot.published",
113
+ version: 1,
114
+ description: "KB snapshot published.",
115
+ stability: "experimental",
116
+ owners: ["@examples"],
117
+ tags: ["knowledge"]
118
+ },
119
+ payload: KbSnapshotPublishedPayload
120
+ });
121
+
122
+ //#endregion
123
+ export { KbRuleVersionApprovedEvent, KbRuleVersionCreatedEvent, KbSnapshotPublishedEvent, KbSourceIngestedEvent };
124
+ //# sourceMappingURL=events.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"events.js","names":[],"sources":["../src/events.ts"],"sourcesContent":["import { defineEvent, defineSchemaModel } from '@lssm/lib.contracts';\nimport { ScalarTypeEnum } from '@lssm/lib.schema';\n\nconst KbSourceIngestedPayload = defineSchemaModel({\n name: 'KbSourceIngestedPayload',\n description: 'Emitted when a source document is ingested.',\n fields: {\n sourceDocumentId: {\n type: ScalarTypeEnum.String_unsecure(),\n isOptional: false,\n },\n jurisdiction: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n hash: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n },\n});\n\nexport const KbSourceIngestedEvent = defineEvent({\n meta: {\n key: 'kb.source.ingested',\n version: 1,\n description: 'Source document ingested (immutable).',\n stability: 'experimental',\n owners: ['@examples'],\n tags: ['knowledge'],\n },\n payload: KbSourceIngestedPayload,\n});\n\nconst KbRuleVersionCreatedPayload = defineSchemaModel({\n name: 'KbRuleVersionCreatedPayload',\n description: 'Emitted when a rule version draft is created.',\n fields: {\n ruleVersionId: {\n type: ScalarTypeEnum.String_unsecure(),\n isOptional: false,\n },\n ruleId: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n jurisdiction: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n status: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n },\n});\n\nexport const KbRuleVersionCreatedEvent = defineEvent({\n meta: {\n key: 'kb.ruleVersion.created',\n version: 1,\n description: 'Rule version created (draft).',\n stability: 'experimental',\n owners: ['@examples'],\n tags: ['knowledge'],\n },\n payload: KbRuleVersionCreatedPayload,\n});\n\nconst KbRuleVersionApprovedPayload = defineSchemaModel({\n name: 'KbRuleVersionApprovedPayload',\n description: 'Emitted when a rule version is approved.',\n fields: {\n ruleVersionId: {\n type: ScalarTypeEnum.String_unsecure(),\n isOptional: false,\n },\n approver: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n },\n});\n\nexport const KbRuleVersionApprovedEvent = defineEvent({\n meta: {\n key: 'kb.ruleVersion.approved',\n version: 1,\n description: 'Rule version approved (human verified).',\n stability: 'experimental',\n owners: ['@examples'],\n tags: ['knowledge'],\n },\n payload: KbRuleVersionApprovedPayload,\n});\n\nconst KbSnapshotPublishedPayload = defineSchemaModel({\n name: 'KbSnapshotPublishedPayload',\n description: 'Emitted when a KB snapshot is published.',\n fields: {\n snapshotId: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n jurisdiction: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n includedRuleVersionsCount: {\n type: ScalarTypeEnum.Int_unsecure(),\n isOptional: false,\n },\n },\n});\n\nexport const KbSnapshotPublishedEvent = defineEvent({\n meta: {\n key: 'kb.snapshot.published',\n version: 1,\n description: 'KB snapshot published.',\n stability: 'experimental',\n owners: ['@examples'],\n tags: ['knowledge'],\n },\n payload: KbSnapshotPublishedPayload,\n});\n"],"mappings":";;;;AAGA,MAAM,0BAA0B,kBAAkB;CAChD,MAAM;CACN,aAAa;CACb,QAAQ;EACN,kBAAkB;GAChB,MAAM,eAAe,iBAAiB;GACtC,YAAY;GACb;EACD,cAAc;GAAE,MAAM,eAAe,iBAAiB;GAAE,YAAY;GAAO;EAC3E,MAAM;GAAE,MAAM,eAAe,iBAAiB;GAAE,YAAY;GAAO;EACpE;CACF,CAAC;AAEF,MAAa,wBAAwB,YAAY;CAC/C,MAAM;EACJ,KAAK;EACL,SAAS;EACT,aAAa;EACb,WAAW;EACX,QAAQ,CAAC,YAAY;EACrB,MAAM,CAAC,YAAY;EACpB;CACD,SAAS;CACV,CAAC;AAEF,MAAM,8BAA8B,kBAAkB;CACpD,MAAM;CACN,aAAa;CACb,QAAQ;EACN,eAAe;GACb,MAAM,eAAe,iBAAiB;GACtC,YAAY;GACb;EACD,QAAQ;GAAE,MAAM,eAAe,iBAAiB;GAAE,YAAY;GAAO;EACrE,cAAc;GAAE,MAAM,eAAe,iBAAiB;GAAE,YAAY;GAAO;EAC3E,QAAQ;GAAE,MAAM,eAAe,iBAAiB;GAAE,YAAY;GAAO;EACtE;CACF,CAAC;AAEF,MAAa,4BAA4B,YAAY;CACnD,MAAM;EACJ,KAAK;EACL,SAAS;EACT,aAAa;EACb,WAAW;EACX,QAAQ,CAAC,YAAY;EACrB,MAAM,CAAC,YAAY;EACpB;CACD,SAAS;CACV,CAAC;AAEF,MAAM,+BAA+B,kBAAkB;CACrD,MAAM;CACN,aAAa;CACb,QAAQ;EACN,eAAe;GACb,MAAM,eAAe,iBAAiB;GACtC,YAAY;GACb;EACD,UAAU;GAAE,MAAM,eAAe,iBAAiB;GAAE,YAAY;GAAO;EACxE;CACF,CAAC;AAEF,MAAa,6BAA6B,YAAY;CACpD,MAAM;EACJ,KAAK;EACL,SAAS;EACT,aAAa;EACb,WAAW;EACX,QAAQ,CAAC,YAAY;EACrB,MAAM,CAAC,YAAY;EACpB;CACD,SAAS;CACV,CAAC;AAEF,MAAM,6BAA6B,kBAAkB;CACnD,MAAM;CACN,aAAa;CACb,QAAQ;EACN,YAAY;GAAE,MAAM,eAAe,iBAAiB;GAAE,YAAY;GAAO;EACzE,cAAc;GAAE,MAAM,eAAe,iBAAiB;GAAE,YAAY;GAAO;EAC3E,2BAA2B;GACzB,MAAM,eAAe,cAAc;GACnC,YAAY;GACb;EACF;CACF,CAAC;AAEF,MAAa,2BAA2B,YAAY;CAClD,MAAM;EACJ,KAAK;EACL,SAAS;EACT,aAAa;EACb,WAAW;EACX,QAAQ,CAAC,YAAY;EACrB,MAAM,CAAC,YAAY;EACpB;CACD,SAAS;CACV,CAAC"}
@@ -0,0 +1,36 @@
1
+ //#region src/example.d.ts
2
+ declare const example: {
3
+ readonly id: "versioned-knowledge-base";
4
+ readonly title: "Versioned Knowledge Base";
5
+ readonly summary: "Curated KB with immutable sources, reviewable rule versions, and published snapshots.";
6
+ readonly tags: readonly ["knowledge", "versioning", "snapshots"];
7
+ readonly kind: "knowledge";
8
+ readonly visibility: "public";
9
+ readonly docs: {
10
+ readonly rootDocId: "docs.examples.versioned-knowledge-base";
11
+ };
12
+ readonly entrypoints: {
13
+ readonly packageName: "@lssm/example.versioned-knowledge-base";
14
+ readonly feature: "./feature";
15
+ readonly contracts: "./contracts";
16
+ readonly handlers: "./handlers";
17
+ readonly docs: "./docs";
18
+ };
19
+ readonly surfaces: {
20
+ readonly templates: true;
21
+ readonly sandbox: {
22
+ readonly enabled: true;
23
+ readonly modes: readonly ["markdown", "specs", "builder"];
24
+ };
25
+ readonly studio: {
26
+ readonly enabled: true;
27
+ readonly installable: true;
28
+ };
29
+ readonly mcp: {
30
+ readonly enabled: true;
31
+ };
32
+ };
33
+ };
34
+ //#endregion
35
+ export { example as default };
36
+ //# sourceMappingURL=example.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"example.d.ts","names":[],"sources":["../src/example.ts"],"sourcesContent":[],"mappings":";cAAM;EAAA,SAAA,EAwBI,EAAA,0BAAA"}
package/dist/example.js CHANGED
@@ -1 +1,42 @@
1
- var e={id:`versioned-knowledge-base`,title:`Versioned Knowledge Base`,summary:`Curated KB with immutable sources, reviewable rule versions, and published snapshots.`,tags:[`knowledge`,`versioning`,`snapshots`],kind:`knowledge`,visibility:`public`,docs:{rootDocId:`docs.examples.versioned-knowledge-base`},entrypoints:{packageName:`@lssm/example.versioned-knowledge-base`,feature:`./feature`,contracts:`./contracts`,handlers:`./handlers`,docs:`./docs`},surfaces:{templates:!0,sandbox:{enabled:!0,modes:[`markdown`,`specs`,`builder`]},studio:{enabled:!0,installable:!0},mcp:{enabled:!0}}};export{e as default};
1
+ //#region src/example.ts
2
+ const example = {
3
+ id: "versioned-knowledge-base",
4
+ title: "Versioned Knowledge Base",
5
+ summary: "Curated KB with immutable sources, reviewable rule versions, and published snapshots.",
6
+ tags: [
7
+ "knowledge",
8
+ "versioning",
9
+ "snapshots"
10
+ ],
11
+ kind: "knowledge",
12
+ visibility: "public",
13
+ docs: { rootDocId: "docs.examples.versioned-knowledge-base" },
14
+ entrypoints: {
15
+ packageName: "@lssm/example.versioned-knowledge-base",
16
+ feature: "./feature",
17
+ contracts: "./contracts",
18
+ handlers: "./handlers",
19
+ docs: "./docs"
20
+ },
21
+ surfaces: {
22
+ templates: true,
23
+ sandbox: {
24
+ enabled: true,
25
+ modes: [
26
+ "markdown",
27
+ "specs",
28
+ "builder"
29
+ ]
30
+ },
31
+ studio: {
32
+ enabled: true,
33
+ installable: true
34
+ },
35
+ mcp: { enabled: true }
36
+ }
37
+ };
38
+ var example_default = example;
39
+
40
+ //#endregion
41
+ export { example_default as default };
42
+ //# sourceMappingURL=example.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"example.js","names":[],"sources":["../src/example.ts"],"sourcesContent":["const example = {\n id: 'versioned-knowledge-base',\n title: 'Versioned Knowledge Base',\n summary:\n 'Curated KB with immutable sources, reviewable rule versions, and published snapshots.',\n tags: ['knowledge', 'versioning', 'snapshots'],\n kind: 'knowledge',\n visibility: 'public',\n docs: {\n rootDocId: 'docs.examples.versioned-knowledge-base',\n },\n entrypoints: {\n packageName: '@lssm/example.versioned-knowledge-base',\n feature: './feature',\n contracts: './contracts',\n handlers: './handlers',\n docs: './docs',\n },\n surfaces: {\n templates: true,\n sandbox: { enabled: true, modes: ['markdown', 'specs', 'builder'] },\n studio: { enabled: true, installable: true },\n mcp: { enabled: true },\n },\n} as const;\n\nexport default example;\n"],"mappings":";AAAA,MAAM,UAAU;CACd,IAAI;CACJ,OAAO;CACP,SACE;CACF,MAAM;EAAC;EAAa;EAAc;EAAY;CAC9C,MAAM;CACN,YAAY;CACZ,MAAM,EACJ,WAAW,0CACZ;CACD,aAAa;EACX,aAAa;EACb,SAAS;EACT,WAAW;EACX,UAAU;EACV,MAAM;EACP;CACD,UAAU;EACR,WAAW;EACX,SAAS;GAAE,SAAS;GAAM,OAAO;IAAC;IAAY;IAAS;IAAU;GAAE;EACnE,QAAQ;GAAE,SAAS;GAAM,aAAa;GAAM;EAC5C,KAAK,EAAE,SAAS,MAAM;EACvB;CACF;AAED,sBAAe"}
@@ -0,0 +1,2 @@
1
+ import { MemoryKbHandlers, MemoryKbStore, createMemoryKbHandlers, createMemoryKbStore } from "./memory.handlers.js";
2
+ export { MemoryKbHandlers, MemoryKbStore, createMemoryKbHandlers, createMemoryKbStore };
@@ -1 +1,3 @@
1
- import{createMemoryKbHandlers as e,createMemoryKbStore as t}from"./memory.handlers.js";export{e as createMemoryKbHandlers,t as createMemoryKbStore};
1
+ import { createMemoryKbHandlers, createMemoryKbStore } from "./memory.handlers.js";
2
+
3
+ export { createMemoryKbHandlers, createMemoryKbStore };
@@ -0,0 +1,78 @@
1
+ //#region src/handlers/memory.handlers.d.ts
2
+ interface SourceRef {
3
+ sourceDocumentId: string;
4
+ excerpt?: string;
5
+ }
6
+ interface SourceDocument {
7
+ id: string;
8
+ jurisdiction: string;
9
+ authority: string;
10
+ title: string;
11
+ fetchedAt: Date;
12
+ hash: string;
13
+ fileId: string;
14
+ }
15
+ interface Rule {
16
+ id: string;
17
+ jurisdiction: string;
18
+ topicKey: string;
19
+ }
20
+ interface RuleVersion {
21
+ id: string;
22
+ ruleId: string;
23
+ jurisdiction: string;
24
+ topicKey: string;
25
+ version: number;
26
+ content: string;
27
+ sourceRefs: SourceRef[];
28
+ status: 'draft' | 'approved' | 'rejected';
29
+ approvedBy?: string;
30
+ approvedAt?: Date;
31
+ createdAt: Date;
32
+ }
33
+ interface KBSnapshot {
34
+ id: string;
35
+ jurisdiction: string;
36
+ asOfDate: Date;
37
+ includedRuleVersionIds: string[];
38
+ publishedAt: Date;
39
+ }
40
+ interface MemoryKbStore {
41
+ sources: Map<string, SourceDocument>;
42
+ rules: Map<string, Rule>;
43
+ ruleVersions: Map<string, RuleVersion>;
44
+ snapshots: Map<string, KBSnapshot>;
45
+ nextRuleVersionNumberByRuleId: Map<string, number>;
46
+ }
47
+ declare function createMemoryKbStore(): MemoryKbStore;
48
+ interface MemoryKbHandlers {
49
+ createRule(rule: Rule): Promise<Rule>;
50
+ ingestSource(input: Omit<SourceDocument, 'id'>): Promise<SourceDocument>;
51
+ upsertRuleVersion(input: {
52
+ ruleId: string;
53
+ content: string;
54
+ sourceRefs: SourceRef[];
55
+ }): Promise<RuleVersion>;
56
+ approveRuleVersion(input: {
57
+ ruleVersionId: string;
58
+ approver: string;
59
+ }): Promise<RuleVersion>;
60
+ publishSnapshot(input: {
61
+ jurisdiction: string;
62
+ asOfDate: Date;
63
+ }): Promise<KBSnapshot>;
64
+ search(input: {
65
+ snapshotId: string;
66
+ jurisdiction: string;
67
+ query: string;
68
+ }): Promise<{
69
+ items: {
70
+ ruleVersionId: string;
71
+ excerpt?: string;
72
+ }[];
73
+ }>;
74
+ }
75
+ declare function createMemoryKbHandlers(store: MemoryKbStore): MemoryKbHandlers;
76
+ //#endregion
77
+ export { MemoryKbHandlers, MemoryKbStore, createMemoryKbHandlers, createMemoryKbStore };
78
+ //# sourceMappingURL=memory.handlers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"memory.handlers.d.ts","names":[],"sources":["../../src/handlers/memory.handlers.ts"],"sourcesContent":[],"mappings":";UAAU,SAAA;EAAA,gBAAS,EAAA,MAAA;EAIT,OAAA,CAAA,EAAA,MAAA;AAKO;AAIH,UATJ,cAAA,CAcW;EAOP,EAAA,EAAA,MAAA;EAGC,YAAA,EAAA,MAAA;EACF,SAAA,EAAA,MAAA;EAAI,KAAA,EAAA,MAAA;EAEP,SAAA,EAtBG,IAsBO;EAQH,IAAA,EAAA,MAAA;EACM,MAAA,EAAA,MAAA;;UA3Bb,IAAA,CA4BW;EAAZ,EAAA,EAAA,MAAA;EACmB,YAAA,EAAA,MAAA;EAAZ,QAAA,EAAA,MAAA;;UAxBN,WAAA,CAyBG;EACoB,EAAA,EAAA,MAAA;EAAG,MAAA,EAAA,MAAA;EAGpB,YAAA,EAAA,MAAA;EAUC,QAAA,EAAA,MAAA;EACE,OAAA,EAAA,MAAA;EAAe,OAAA,EAAA,MAAA;EAAR,UAAA,EAjCZ,SAiCY,EAAA;EACC,MAAA,EAAA,OAAA,GAAA,UAAA,GAAA,UAAA;EAAL,UAAA,CAAA,EAAA,MAAA;EAAqC,UAAA,CAAA,EA/B5C,IA+B4C;EAAR,SAAA,EA9BtC,IA8BsC;;UA5BzC,UAAA,CAiCI;EAAR,EAAA,EAAA,MAAA;EAIQ,YAAA,EAAA,MAAA;EAAR,QAAA,EAlCM,IAkCN;EAGQ,sBAAA,EAAA,MAAA,EAAA;EACA,WAAA,EApCC,IAoCD;;AAKR,UAtCW,aAAA,CAsCX;EAAO,OAAA,EArCF,GAqCE,CAAA,MAAA,EArCU,cAqCV,CAAA;EAOG,KAAA,EA3CP,GA2CO,CAAA,MAAA,EA3CK,IA2CL,CAAA;gBA1CA,YAAY;aACf,YAAY;iCACQ;;iBAGjB,mBAAA,CAAA,GAAuB;UAUtB,gBAAA;mBACE,OAAO,QAAQ;sBACZ,KAAK,wBAAwB,QAAQ;;;;gBAI3C;MACV,QAAQ;;;;MAIR,QAAQ;;;cAGA;MACR,QAAQ;;;;;MAKR;;;;;;;iBAOU,sBAAA,QAA8B,gBAAgB"}
@@ -1 +1,104 @@
1
- function e(){return{sources:new Map,rules:new Map,ruleVersions:new Map,snapshots:new Map,nextRuleVersionNumberByRuleId:new Map}}function t(e,t){return`${e}_${t.replace(/[^a-zA-Z0-9_-]/g,`_`)}`}function n(e){async function n(t){return e.rules.set(t.id,t),t}async function r(n){let r=t(`src`,`${n.jurisdiction}_${n.hash}`),i={id:r,...n};return e.sources.set(r,i),i}async function i(n){if(!n.sourceRefs.length)throw Error(`SOURCE_REFS_REQUIRED`);let r=e.rules.get(n.ruleId);if(!r)throw Error(`RULE_NOT_FOUND`);let i=(e.nextRuleVersionNumberByRuleId.get(n.ruleId)??0)+1;e.nextRuleVersionNumberByRuleId.set(n.ruleId,i);let a=t(`rv`,`${n.ruleId}_${i}`),o={id:a,ruleId:n.ruleId,jurisdiction:r.jurisdiction,topicKey:r.topicKey,version:i,content:n.content,sourceRefs:n.sourceRefs,status:`draft`,createdAt:new Date,approvedAt:void 0,approvedBy:void 0};return e.ruleVersions.set(a,o),o}async function a(t){let n=e.ruleVersions.get(t.ruleVersionId);if(!n)throw Error(`RULE_VERSION_NOT_FOUND`);let r={...n,status:`approved`,approvedBy:t.approver,approvedAt:new Date};return e.ruleVersions.set(r.id,r),r}async function o(n){let r=[...e.ruleVersions.values()].filter(e=>e.status===`approved`&&e.jurisdiction===n.jurisdiction);if(r.length===0)throw Error(`NO_APPROVED_RULES`);let i=r.map(e=>e.id).sort(),a=t(`snap`,`${n.jurisdiction}_${n.asOfDate.toISOString().slice(0,10)}_${i.length}`),o={id:a,jurisdiction:n.jurisdiction,asOfDate:n.asOfDate,includedRuleVersionIds:i,publishedAt:new Date};return e.snapshots.set(a,o),o}async function s(t){let n=e.snapshots.get(t.snapshotId);if(!n)throw Error(`SNAPSHOT_NOT_FOUND`);if(n.jurisdiction!==t.jurisdiction)throw Error(`JURISDICTION_MISMATCH`);let r=t.query.toLowerCase().split(/\s+/).map(e=>e.trim()).filter(Boolean);return{items:n.includedRuleVersionIds.map(t=>e.ruleVersions.get(t)).filter(e=>!!e).filter(e=>{if(r.length===0)return!0;let t=e.content.toLowerCase();return r.every(e=>t.includes(e))}).map(e=>({ruleVersionId:e.id,excerpt:e.content.slice(0,120)}))}}return{createRule:n,ingestSource:r,upsertRuleVersion:i,approveRuleVersion:a,publishSnapshot:o,search:s}}export{n as createMemoryKbHandlers,e as createMemoryKbStore};
1
+ //#region src/handlers/memory.handlers.ts
2
+ function createMemoryKbStore() {
3
+ return {
4
+ sources: /* @__PURE__ */ new Map(),
5
+ rules: /* @__PURE__ */ new Map(),
6
+ ruleVersions: /* @__PURE__ */ new Map(),
7
+ snapshots: /* @__PURE__ */ new Map(),
8
+ nextRuleVersionNumberByRuleId: /* @__PURE__ */ new Map()
9
+ };
10
+ }
11
+ function stableId(prefix, value) {
12
+ return `${prefix}_${value.replace(/[^a-zA-Z0-9_-]/g, "_")}`;
13
+ }
14
+ function createMemoryKbHandlers(store) {
15
+ async function createRule(rule) {
16
+ store.rules.set(rule.id, rule);
17
+ return rule;
18
+ }
19
+ async function ingestSource(input) {
20
+ const id = stableId("src", `${input.jurisdiction}_${input.hash}`);
21
+ const doc = {
22
+ id,
23
+ ...input
24
+ };
25
+ store.sources.set(id, doc);
26
+ return doc;
27
+ }
28
+ async function upsertRuleVersion(input) {
29
+ if (!input.sourceRefs.length) throw new Error("SOURCE_REFS_REQUIRED");
30
+ const rule = store.rules.get(input.ruleId);
31
+ if (!rule) throw new Error("RULE_NOT_FOUND");
32
+ const next = (store.nextRuleVersionNumberByRuleId.get(input.ruleId) ?? 0) + 1;
33
+ store.nextRuleVersionNumberByRuleId.set(input.ruleId, next);
34
+ const id = stableId("rv", `${input.ruleId}_${next}`);
35
+ const ruleVersion = {
36
+ id,
37
+ ruleId: input.ruleId,
38
+ jurisdiction: rule.jurisdiction,
39
+ topicKey: rule.topicKey,
40
+ version: next,
41
+ content: input.content,
42
+ sourceRefs: input.sourceRefs,
43
+ status: "draft",
44
+ createdAt: /* @__PURE__ */ new Date(),
45
+ approvedAt: void 0,
46
+ approvedBy: void 0
47
+ };
48
+ store.ruleVersions.set(id, ruleVersion);
49
+ return ruleVersion;
50
+ }
51
+ async function approveRuleVersion(input) {
52
+ const existing = store.ruleVersions.get(input.ruleVersionId);
53
+ if (!existing) throw new Error("RULE_VERSION_NOT_FOUND");
54
+ const approved = {
55
+ ...existing,
56
+ status: "approved",
57
+ approvedBy: input.approver,
58
+ approvedAt: /* @__PURE__ */ new Date()
59
+ };
60
+ store.ruleVersions.set(approved.id, approved);
61
+ return approved;
62
+ }
63
+ async function publishSnapshot(input) {
64
+ const approved = [...store.ruleVersions.values()].filter((rv) => rv.status === "approved" && rv.jurisdiction === input.jurisdiction);
65
+ if (approved.length === 0) throw new Error("NO_APPROVED_RULES");
66
+ const includedRuleVersionIds = approved.map((rv) => rv.id).sort();
67
+ const id = stableId("snap", `${input.jurisdiction}_${input.asOfDate.toISOString().slice(0, 10)}_${includedRuleVersionIds.length}`);
68
+ const snapshot = {
69
+ id,
70
+ jurisdiction: input.jurisdiction,
71
+ asOfDate: input.asOfDate,
72
+ includedRuleVersionIds,
73
+ publishedAt: /* @__PURE__ */ new Date()
74
+ };
75
+ store.snapshots.set(id, snapshot);
76
+ return snapshot;
77
+ }
78
+ async function search(input) {
79
+ const snapshot = store.snapshots.get(input.snapshotId);
80
+ if (!snapshot) throw new Error("SNAPSHOT_NOT_FOUND");
81
+ if (snapshot.jurisdiction !== input.jurisdiction) throw new Error("JURISDICTION_MISMATCH");
82
+ const tokens = input.query.toLowerCase().split(/\s+/).map((t) => t.trim()).filter(Boolean);
83
+ return { items: snapshot.includedRuleVersionIds.map((id) => store.ruleVersions.get(id)).filter((rv) => Boolean(rv)).filter((rv) => {
84
+ if (tokens.length === 0) return true;
85
+ const hay = rv.content.toLowerCase();
86
+ return tokens.every((token) => hay.includes(token));
87
+ }).map((rv) => ({
88
+ ruleVersionId: rv.id,
89
+ excerpt: rv.content.slice(0, 120)
90
+ })) };
91
+ }
92
+ return {
93
+ createRule,
94
+ ingestSource,
95
+ upsertRuleVersion,
96
+ approveRuleVersion,
97
+ publishSnapshot,
98
+ search
99
+ };
100
+ }
101
+
102
+ //#endregion
103
+ export { createMemoryKbHandlers, createMemoryKbStore };
104
+ //# sourceMappingURL=memory.handlers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"memory.handlers.js","names":["doc: SourceDocument","ruleVersion: RuleVersion","approved: RuleVersion","snapshot: KBSnapshot"],"sources":["../../src/handlers/memory.handlers.ts"],"sourcesContent":["interface SourceRef {\n sourceDocumentId: string;\n excerpt?: string;\n}\ninterface SourceDocument {\n id: string;\n jurisdiction: string;\n authority: string;\n title: string;\n fetchedAt: Date;\n hash: string;\n fileId: string;\n}\ninterface Rule {\n id: string;\n jurisdiction: string;\n topicKey: string;\n}\ninterface RuleVersion {\n id: string;\n ruleId: string;\n jurisdiction: string;\n topicKey: string;\n version: number;\n content: string;\n sourceRefs: SourceRef[];\n status: 'draft' | 'approved' | 'rejected';\n approvedBy?: string;\n approvedAt?: Date;\n createdAt: Date;\n}\ninterface KBSnapshot {\n id: string;\n jurisdiction: string;\n asOfDate: Date;\n includedRuleVersionIds: string[];\n publishedAt: Date;\n}\n\nexport interface MemoryKbStore {\n sources: Map<string, SourceDocument>;\n rules: Map<string, Rule>;\n ruleVersions: Map<string, RuleVersion>;\n snapshots: Map<string, KBSnapshot>;\n nextRuleVersionNumberByRuleId: Map<string, number>;\n}\n\nexport function createMemoryKbStore(): MemoryKbStore {\n return {\n sources: new Map(),\n rules: new Map(),\n ruleVersions: new Map(),\n snapshots: new Map(),\n nextRuleVersionNumberByRuleId: new Map(),\n };\n}\n\nexport interface MemoryKbHandlers {\n createRule(rule: Rule): Promise<Rule>;\n ingestSource(input: Omit<SourceDocument, 'id'>): Promise<SourceDocument>;\n upsertRuleVersion(input: {\n ruleId: string;\n content: string;\n sourceRefs: SourceRef[];\n }): Promise<RuleVersion>;\n approveRuleVersion(input: {\n ruleVersionId: string;\n approver: string;\n }): Promise<RuleVersion>;\n publishSnapshot(input: {\n jurisdiction: string;\n asOfDate: Date;\n }): Promise<KBSnapshot>;\n search(input: {\n snapshotId: string;\n jurisdiction: string;\n query: string;\n }): Promise<{ items: { ruleVersionId: string; excerpt?: string }[] }>;\n}\n\nfunction stableId(prefix: string, value: string): string {\n return `${prefix}_${value.replace(/[^a-zA-Z0-9_-]/g, '_')}`;\n}\n\nexport function createMemoryKbHandlers(store: MemoryKbStore): MemoryKbHandlers {\n async function createRule(rule: Rule): Promise<Rule> {\n store.rules.set(rule.id, rule);\n return rule;\n }\n\n async function ingestSource(\n input: Omit<SourceDocument, 'id'>\n ): Promise<SourceDocument> {\n const id = stableId('src', `${input.jurisdiction}_${input.hash}`);\n const doc: SourceDocument = { id, ...input };\n store.sources.set(id, doc);\n return doc;\n }\n\n async function upsertRuleVersion(input: {\n ruleId: string;\n content: string;\n sourceRefs: SourceRef[];\n }): Promise<RuleVersion> {\n if (!input.sourceRefs.length) {\n throw new Error('SOURCE_REFS_REQUIRED');\n }\n const rule = store.rules.get(input.ruleId);\n if (!rule) {\n throw new Error('RULE_NOT_FOUND');\n }\n const next =\n (store.nextRuleVersionNumberByRuleId.get(input.ruleId) ?? 0) + 1;\n store.nextRuleVersionNumberByRuleId.set(input.ruleId, next);\n const id = stableId('rv', `${input.ruleId}_${next}`);\n const ruleVersion: RuleVersion = {\n id,\n ruleId: input.ruleId,\n jurisdiction: rule.jurisdiction,\n topicKey: rule.topicKey,\n version: next,\n content: input.content,\n sourceRefs: input.sourceRefs,\n status: 'draft',\n createdAt: new Date(),\n approvedAt: undefined,\n approvedBy: undefined,\n };\n store.ruleVersions.set(id, ruleVersion);\n return ruleVersion;\n }\n\n async function approveRuleVersion(input: {\n ruleVersionId: string;\n approver: string;\n }): Promise<RuleVersion> {\n const existing = store.ruleVersions.get(input.ruleVersionId);\n if (!existing) {\n throw new Error('RULE_VERSION_NOT_FOUND');\n }\n const approved: RuleVersion = {\n ...existing,\n status: 'approved',\n approvedBy: input.approver,\n approvedAt: new Date(),\n };\n store.ruleVersions.set(approved.id, approved);\n return approved;\n }\n\n async function publishSnapshot(input: {\n jurisdiction: string;\n asOfDate: Date;\n }): Promise<KBSnapshot> {\n const approved = [...store.ruleVersions.values()].filter(\n (rv) => rv.status === 'approved' && rv.jurisdiction === input.jurisdiction\n );\n if (approved.length === 0) {\n throw new Error('NO_APPROVED_RULES');\n }\n const includedRuleVersionIds = approved.map((rv) => rv.id).sort();\n const id = stableId(\n 'snap',\n `${input.jurisdiction}_${input.asOfDate.toISOString().slice(0, 10)}_${includedRuleVersionIds.length}`\n );\n const snapshot: KBSnapshot = {\n id,\n jurisdiction: input.jurisdiction,\n asOfDate: input.asOfDate,\n includedRuleVersionIds,\n publishedAt: new Date(),\n };\n store.snapshots.set(id, snapshot);\n return snapshot;\n }\n\n async function search(input: {\n snapshotId: string;\n jurisdiction: string;\n query: string;\n }): Promise<{ items: { ruleVersionId: string; excerpt?: string }[] }> {\n const snapshot = store.snapshots.get(input.snapshotId);\n if (!snapshot) {\n throw new Error('SNAPSHOT_NOT_FOUND');\n }\n if (snapshot.jurisdiction !== input.jurisdiction) {\n throw new Error('JURISDICTION_MISMATCH');\n }\n const q = input.query.toLowerCase();\n const tokens = q\n .split(/\\s+/)\n .map((t) => t.trim())\n .filter(Boolean);\n const items = snapshot.includedRuleVersionIds\n .map((id) => store.ruleVersions.get(id))\n .filter((rv): rv is RuleVersion => Boolean(rv))\n .filter((rv) => {\n if (tokens.length === 0) return true;\n const hay = rv.content.toLowerCase();\n return tokens.every((token) => hay.includes(token));\n })\n .map((rv) => ({\n ruleVersionId: rv.id,\n excerpt: rv.content.slice(0, 120),\n }));\n return { items };\n }\n\n return {\n createRule,\n ingestSource,\n upsertRuleVersion,\n approveRuleVersion,\n publishSnapshot,\n search,\n };\n}\n"],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import { KBSnapshotModel, RuleModel, RuleVersionModel, SourceDocumentModel, SourceRefModel } from "./entities/models.js";
2
+ import "./entities/index.js";
3
+ import { KbRuleVersionApprovedEvent, KbRuleVersionCreatedEvent, KbSnapshotPublishedEvent, KbSourceIngestedEvent } from "./events.js";
4
+ import example from "./example.js";
5
+ import { MemoryKbHandlers, MemoryKbStore, createMemoryKbHandlers, createMemoryKbStore } from "./handlers/memory.handlers.js";
6
+ import { KbApproveRuleVersionContract, KbIngestSourceContract, KbPublishSnapshotContract, KbSearchContract, KbUpsertRuleVersionContract } from "./operations/kb.js";
7
+ import "./operations/index.js";
8
+ import { VersionedKnowledgeBaseFeature } from "./versioned-knowledge-base.feature.js";
9
+ export { KBSnapshotModel, KbApproveRuleVersionContract, KbIngestSourceContract, KbPublishSnapshotContract, KbRuleVersionApprovedEvent, KbRuleVersionCreatedEvent, KbSearchContract, KbSnapshotPublishedEvent, KbSourceIngestedEvent, KbUpsertRuleVersionContract, MemoryKbHandlers, MemoryKbStore, RuleModel, RuleVersionModel, SourceDocumentModel, SourceRefModel, VersionedKnowledgeBaseFeature, createMemoryKbHandlers, createMemoryKbStore, example };
package/dist/index.js CHANGED
@@ -1 +1,11 @@
1
- import{KbRuleVersionApprovedEvent as e,KbRuleVersionCreatedEvent as t,KbSnapshotPublishedEvent as n,KbSourceIngestedEvent as r}from"./events.js";import i from"./example.js";import{KBSnapshotModel as a,RuleModel as o,RuleVersionModel as s,SourceDocumentModel as c,SourceRefModel as l}from"./entities/models.js";import"./entities/index.js";import{KbApproveRuleVersionContract as u,KbIngestSourceContract as d,KbPublishSnapshotContract as f,KbSearchContract as p,KbUpsertRuleVersionContract as m}from"./contracts/kb.js";import"./contracts/index.js";import{createMemoryKbHandlers as h,createMemoryKbStore as g}from"./handlers/memory.handlers.js";import{VersionedKnowledgeBaseFeature as _}from"./versioned-knowledge-base.feature.js";import"./docs/index.js";export{a as KBSnapshotModel,u as KbApproveRuleVersionContract,d as KbIngestSourceContract,f as KbPublishSnapshotContract,e as KbRuleVersionApprovedEvent,t as KbRuleVersionCreatedEvent,p as KbSearchContract,n as KbSnapshotPublishedEvent,r as KbSourceIngestedEvent,m as KbUpsertRuleVersionContract,o as RuleModel,s as RuleVersionModel,c as SourceDocumentModel,l as SourceRefModel,_ as VersionedKnowledgeBaseFeature,h as createMemoryKbHandlers,g as createMemoryKbStore,i as example};
1
+ import { KbRuleVersionApprovedEvent, KbRuleVersionCreatedEvent, KbSnapshotPublishedEvent, KbSourceIngestedEvent } from "./events.js";
2
+ import example_default from "./example.js";
3
+ import { KBSnapshotModel, RuleModel, RuleVersionModel, SourceDocumentModel, SourceRefModel } from "./entities/models.js";
4
+ import "./entities/index.js";
5
+ import { KbApproveRuleVersionContract, KbIngestSourceContract, KbPublishSnapshotContract, KbSearchContract, KbUpsertRuleVersionContract } from "./operations/kb.js";
6
+ import "./operations/index.js";
7
+ import { createMemoryKbHandlers, createMemoryKbStore } from "./handlers/memory.handlers.js";
8
+ import { VersionedKnowledgeBaseFeature } from "./versioned-knowledge-base.feature.js";
9
+ import "./docs/index.js";
10
+
11
+ export { KBSnapshotModel, KbApproveRuleVersionContract, KbIngestSourceContract, KbPublishSnapshotContract, KbRuleVersionApprovedEvent, KbRuleVersionCreatedEvent, KbSearchContract, KbSnapshotPublishedEvent, KbSourceIngestedEvent, KbUpsertRuleVersionContract, RuleModel, RuleVersionModel, SourceDocumentModel, SourceRefModel, VersionedKnowledgeBaseFeature, createMemoryKbHandlers, createMemoryKbStore, example_default as example };
@@ -0,0 +1,2 @@
1
+ import { KbApproveRuleVersionContract, KbIngestSourceContract, KbPublishSnapshotContract, KbSearchContract, KbUpsertRuleVersionContract } from "./kb.js";
2
+ export { KbApproveRuleVersionContract, KbIngestSourceContract, KbPublishSnapshotContract, KbSearchContract, KbUpsertRuleVersionContract };
@@ -0,0 +1,3 @@
1
+ import { KbApproveRuleVersionContract, KbIngestSourceContract, KbPublishSnapshotContract, KbSearchContract, KbUpsertRuleVersionContract } from "./kb.js";
2
+
3
+ export { KbApproveRuleVersionContract, KbIngestSourceContract, KbPublishSnapshotContract, KbSearchContract, KbUpsertRuleVersionContract };