deepadata-edm-sdk 0.6.0-alpha

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/LICENSE +21 -0
  2. package/README.md +240 -0
  3. package/dist/assembler.d.ts +37 -0
  4. package/dist/assembler.d.ts.map +1 -0
  5. package/dist/assembler.js +204 -0
  6. package/dist/assembler.js.map +1 -0
  7. package/dist/extractors/domain-extractors.d.ts +8 -0
  8. package/dist/extractors/domain-extractors.d.ts.map +1 -0
  9. package/dist/extractors/domain-extractors.js +173 -0
  10. package/dist/extractors/domain-extractors.js.map +1 -0
  11. package/dist/extractors/image-analyzer.d.ts +38 -0
  12. package/dist/extractors/image-analyzer.d.ts.map +1 -0
  13. package/dist/extractors/image-analyzer.js +101 -0
  14. package/dist/extractors/image-analyzer.js.map +1 -0
  15. package/dist/extractors/kimi-extractor.d.ts +22 -0
  16. package/dist/extractors/kimi-extractor.d.ts.map +1 -0
  17. package/dist/extractors/kimi-extractor.js +137 -0
  18. package/dist/extractors/kimi-extractor.js.map +1 -0
  19. package/dist/extractors/llm-extractor.d.ts +43 -0
  20. package/dist/extractors/llm-extractor.d.ts.map +1 -0
  21. package/dist/extractors/llm-extractor.js +295 -0
  22. package/dist/extractors/llm-extractor.js.map +1 -0
  23. package/dist/extractors/openai-extractor.d.ts +17 -0
  24. package/dist/extractors/openai-extractor.d.ts.map +1 -0
  25. package/dist/extractors/openai-extractor.js +97 -0
  26. package/dist/extractors/openai-extractor.js.map +1 -0
  27. package/dist/extractors/profile-prompts.d.ts +32 -0
  28. package/dist/extractors/profile-prompts.d.ts.map +1 -0
  29. package/dist/extractors/profile-prompts.js +283 -0
  30. package/dist/extractors/profile-prompts.js.map +1 -0
  31. package/dist/index.d.ts +38 -0
  32. package/dist/index.d.ts.map +1 -0
  33. package/dist/index.js +59 -0
  34. package/dist/index.js.map +1 -0
  35. package/dist/schema/edm-schema.d.ts +1645 -0
  36. package/dist/schema/edm-schema.d.ts.map +1 -0
  37. package/dist/schema/edm-schema.js +345 -0
  38. package/dist/schema/edm-schema.js.map +1 -0
  39. package/dist/schema/types.d.ts +94 -0
  40. package/dist/schema/types.d.ts.map +1 -0
  41. package/dist/schema/types.js +79 -0
  42. package/dist/schema/types.js.map +1 -0
  43. package/dist/stateless.d.ts +28 -0
  44. package/dist/stateless.d.ts.map +1 -0
  45. package/dist/stateless.js +100 -0
  46. package/dist/stateless.js.map +1 -0
  47. package/dist/validator.d.ts +24 -0
  48. package/dist/validator.d.ts.map +1 -0
  49. package/dist/validator.js +154 -0
  50. package/dist/validator.js.map +1 -0
  51. package/package.json +59 -0
@@ -0,0 +1,100 @@
1
+ /**
2
+ * Create a stateless version of an EDM artifact
3
+ * Removes identifying information while preserving emotional structure
4
+ */
5
+ export function createStatelessArtifact(artifact) {
6
+ return {
7
+ ...artifact,
8
+ meta: {
9
+ ...artifact.meta,
10
+ owner_user_id: null, // Required null in stateless mode
11
+ parent_id: null, // Break threading chain
12
+ tags: [], // Remove user-defined tags
13
+ },
14
+ milky_way: nullifyMilkyWay(artifact.milky_way),
15
+ gravity: nullifyGravity(artifact.gravity),
16
+ // Governance: strengthen privacy settings
17
+ governance: {
18
+ ...artifact.governance,
19
+ exportability: "restricted",
20
+ },
21
+ // System: clear any waypoints
22
+ system: {
23
+ embeddings: [],
24
+ indices: {
25
+ waypoint_ids: [],
26
+ sector_weights: artifact.system.indices.sector_weights,
27
+ },
28
+ },
29
+ };
30
+ }
31
+ /**
32
+ * Null out identifying fields in milky_way domain
33
+ */
34
+ function nullifyMilkyWay(milkyWay) {
35
+ return {
36
+ event_type: milkyWay.event_type, // Keep - categorical, not identifying
37
+ location_context: null, // Null - could be identifying
38
+ associated_people: [], // Clear - directly identifying
39
+ visibility_context: milkyWay.visibility_context, // Keep - categorical
40
+ tone_shift: milkyWay.tone_shift, // Keep - emotional, not identifying
41
+ };
42
+ }
43
+ /**
44
+ * Null out identifying fields in gravity domain
45
+ */
46
+ function nullifyGravity(gravity) {
47
+ return {
48
+ ...gravity,
49
+ // Keep emotional structure
50
+ emotional_weight: gravity.emotional_weight,
51
+ emotional_density: gravity.emotional_density,
52
+ valence: gravity.valence,
53
+ viscosity: gravity.viscosity,
54
+ gravity_type: gravity.gravity_type,
55
+ tether_type: gravity.tether_type,
56
+ legacy_embed: gravity.legacy_embed,
57
+ recurrence_pattern: gravity.recurrence_pattern,
58
+ strength_score: gravity.strength_score,
59
+ temporal_decay: gravity.temporal_decay,
60
+ resilience_markers: gravity.resilience_markers,
61
+ adaptation_trajectory: gravity.adaptation_trajectory,
62
+ // Null out potentially identifying retrieval fields
63
+ recall_triggers: [], // Could contain identifying details
64
+ retrieval_keys: [], // Could contain identifying details
65
+ nearby_themes: gravity.nearby_themes, // Keep - abstract themes
66
+ };
67
+ }
68
+ /**
69
+ * Check if an artifact is in stateless mode
70
+ */
71
+ export function isStateless(artifact) {
72
+ return (artifact.meta.owner_user_id === null &&
73
+ artifact.milky_way.associated_people.length === 0 &&
74
+ artifact.milky_way.location_context === null &&
75
+ artifact.gravity.recall_triggers.length === 0 &&
76
+ artifact.gravity.retrieval_keys.length === 0);
77
+ }
78
+ export function validateStateless(artifact) {
79
+ const violations = [];
80
+ if (artifact.meta.owner_user_id !== null) {
81
+ violations.push("meta.owner_user_id must be null in stateless mode");
82
+ }
83
+ if (artifact.milky_way.associated_people.length > 0) {
84
+ violations.push("milky_way.associated_people must be empty in stateless mode");
85
+ }
86
+ if (artifact.milky_way.location_context !== null) {
87
+ violations.push("milky_way.location_context must be null in stateless mode");
88
+ }
89
+ if (artifact.gravity.recall_triggers.length > 0) {
90
+ violations.push("gravity.recall_triggers must be empty in stateless mode");
91
+ }
92
+ if (artifact.gravity.retrieval_keys.length > 0) {
93
+ violations.push("gravity.retrieval_keys must be empty in stateless mode");
94
+ }
95
+ return {
96
+ compliant: violations.length === 0,
97
+ violations,
98
+ };
99
+ }
100
+ //# sourceMappingURL=stateless.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stateless.js","sourceRoot":"","sources":["../src/stateless.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,24 @@
1
+ import type { EdmArtifact, ValidationResult } from "./schema/types.js";
2
+ /**
3
+ * Validate an EDM artifact against the v0.5.0 schema
4
+ */
5
+ export declare function validateEDM(artifact: unknown): ValidationResult;
6
+ /**
7
+ * Validate and return typed artifact or throw
8
+ */
9
+ export declare function validateEDMStrict(artifact: unknown): EdmArtifact;
10
+ /**
11
+ * Validate specific domain
12
+ */
13
+ export type DomainName = "meta" | "core" | "constellation" | "milky_way" | "gravity" | "impulse" | "governance" | "telemetry" | "system" | "crosswalks";
14
+ export declare function validateDomain(domain: DomainName, data: unknown): ValidationResult;
15
+ /**
16
+ * Validate artifact completeness (non-null required fields)
17
+ */
18
+ export interface CompletenessResult {
19
+ complete: boolean;
20
+ missingFields: string[];
21
+ populationRate: number;
22
+ }
23
+ export declare function validateCompleteness(artifact: EdmArtifact): CompletenessResult;
24
+ //# sourceMappingURL=validator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validator.d.ts","sourceRoot":"","sources":["../src/validator.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,WAAW,EAAE,gBAAgB,EAAmB,MAAM,mBAAmB,CAAC;AAExF;;GAEG;AACH,wBAAgB,WAAW,CAAC,QAAQ,EAAE,OAAO,GAAG,gBAAgB,CAc/D;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,OAAO,GAAG,WAAW,CAEhE;AAaD;;GAEG;AACH,MAAM,MAAM,UAAU,GAClB,MAAM,GACN,MAAM,GACN,eAAe,GACf,WAAW,GACX,SAAS,GACT,SAAS,GACT,YAAY,GACZ,WAAW,GACX,QAAQ,GACR,YAAY,CAAC;AA4BjB,wBAAgB,cAAc,CAAC,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,OAAO,GAAG,gBAAgB,CAkBlF;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,QAAQ,EAAE,OAAO,CAAC;IAClB,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,cAAc,EAAE,MAAM,CAAC;CACxB;AAED,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,WAAW,GAAG,kBAAkB,CA6E9E"}
@@ -0,0 +1,154 @@
1
+ import { EdmArtifactSchema } from "./schema/edm-schema.js";
2
+ /**
3
+ * Validate an EDM artifact against the v0.5.0 schema
4
+ */
5
+ export function validateEDM(artifact) {
6
+ const result = EdmArtifactSchema.safeParse(artifact);
7
+ if (result.success) {
8
+ return {
9
+ valid: true,
10
+ errors: [],
11
+ };
12
+ }
13
+ return {
14
+ valid: false,
15
+ errors: formatZodErrors(result.error),
16
+ };
17
+ }
18
+ /**
19
+ * Validate and return typed artifact or throw
20
+ */
21
+ export function validateEDMStrict(artifact) {
22
+ return EdmArtifactSchema.parse(artifact);
23
+ }
24
+ /**
25
+ * Format Zod errors into ValidationError array
26
+ */
27
+ function formatZodErrors(error) {
28
+ return error.errors.map((issue) => ({
29
+ path: issue.path.join("."),
30
+ message: issue.message,
31
+ code: issue.code,
32
+ }));
33
+ }
34
+ import { MetaSchema, CoreSchema, ConstellationSchema, MilkyWaySchema, GravitySchema, ImpulseSchema, GovernanceSchema, TelemetrySchema, SystemSchema, CrosswalksSchema, } from "./schema/edm-schema.js";
35
+ const domainSchemas = {
36
+ meta: MetaSchema,
37
+ core: CoreSchema,
38
+ constellation: ConstellationSchema,
39
+ milky_way: MilkyWaySchema,
40
+ gravity: GravitySchema,
41
+ impulse: ImpulseSchema,
42
+ governance: GovernanceSchema,
43
+ telemetry: TelemetrySchema,
44
+ system: SystemSchema,
45
+ crosswalks: CrosswalksSchema,
46
+ };
47
+ export function validateDomain(domain, data) {
48
+ const schema = domainSchemas[domain];
49
+ const result = schema.safeParse(data);
50
+ if (result.success) {
51
+ return {
52
+ valid: true,
53
+ errors: [],
54
+ };
55
+ }
56
+ return {
57
+ valid: false,
58
+ errors: formatZodErrors(result.error).map((err) => ({
59
+ ...err,
60
+ path: `${domain}.${err.path}`,
61
+ })),
62
+ };
63
+ }
64
+ export function validateCompleteness(artifact) {
65
+ const missingFields = [];
66
+ let totalFields = 0;
67
+ let populatedFields = 0;
68
+ // Check required fields across domains
69
+ const requiredPaths = [
70
+ "meta.version",
71
+ "meta.created_at",
72
+ "meta.visibility",
73
+ "meta.pii_tier",
74
+ "meta.source_type",
75
+ "meta.consent_basis",
76
+ "constellation.emotion_subtone",
77
+ "constellation.transformational_pivot",
78
+ "milky_way.associated_people",
79
+ "gravity.emotional_weight",
80
+ "gravity.recall_triggers",
81
+ "gravity.retrieval_keys",
82
+ "gravity.nearby_themes",
83
+ "gravity.legacy_embed",
84
+ "gravity.strength_score",
85
+ "gravity.resilience_markers",
86
+ "governance.subject_rights",
87
+ "governance.exportability",
88
+ "governance.policy_labels",
89
+ "governance.masking_rules",
90
+ "telemetry.entry_confidence",
91
+ "system.embeddings",
92
+ "system.indices",
93
+ ];
94
+ for (const path of requiredPaths) {
95
+ totalFields++;
96
+ const value = getNestedValue(artifact, path);
97
+ if (value === null || value === undefined) {
98
+ missingFields.push(path);
99
+ }
100
+ else {
101
+ populatedFields++;
102
+ }
103
+ }
104
+ // Also count optional field population
105
+ const optionalPaths = [
106
+ "core.anchor",
107
+ "core.spark",
108
+ "core.wound",
109
+ "core.fuel",
110
+ "core.bridge",
111
+ "core.echo",
112
+ "core.narrative",
113
+ "constellation.emotion_primary",
114
+ "constellation.narrative_arc",
115
+ "constellation.relational_dynamics",
116
+ "constellation.temporal_context",
117
+ "constellation.memory_type",
118
+ "constellation.narrative_archetype",
119
+ "milky_way.event_type",
120
+ "milky_way.location_context",
121
+ "impulse.primary_energy",
122
+ "impulse.drive_state",
123
+ "impulse.motivational_orientation",
124
+ ];
125
+ for (const path of optionalPaths) {
126
+ totalFields++;
127
+ const value = getNestedValue(artifact, path);
128
+ if (value !== null && value !== undefined && value !== "") {
129
+ populatedFields++;
130
+ }
131
+ }
132
+ return {
133
+ complete: missingFields.length === 0,
134
+ missingFields,
135
+ populationRate: Math.round((populatedFields / totalFields) * 100) / 100,
136
+ };
137
+ }
138
+ function getNestedValue(obj, path) {
139
+ const parts = path.split(".");
140
+ let current = obj;
141
+ for (const part of parts) {
142
+ if (current === null || current === undefined) {
143
+ return undefined;
144
+ }
145
+ if (typeof current === "object") {
146
+ current = current[part];
147
+ }
148
+ else {
149
+ return undefined;
150
+ }
151
+ }
152
+ return current;
153
+ }
154
+ //# sourceMappingURL=validator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validator.js","sourceRoot":"","sources":["../src/validator.ts"],"names":[],"mappings":"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"}
package/package.json ADDED
@@ -0,0 +1,59 @@
1
+ {
2
+ "name": "deepadata-edm-sdk",
3
+ "version": "0.6.0-alpha",
4
+ "description": "SDK for assembling EDM v0.6.0 artifacts from user content. LLM-assisted extraction with interpretation constraints and profile support.",
5
+ "type": "module",
6
+ "main": "dist/index.js",
7
+ "types": "dist/index.d.ts",
8
+ "exports": {
9
+ ".": {
10
+ "import": "./dist/index.js",
11
+ "types": "./dist/index.d.ts"
12
+ }
13
+ },
14
+ "scripts": {
15
+ "build": "tsc",
16
+ "prepare": "npm run build",
17
+ "test": "vitest run",
18
+ "test:watch": "vitest",
19
+ "typecheck": "tsc --noEmit",
20
+ "clean": "rimraf dist"
21
+ },
22
+ "keywords": [
23
+ "edm",
24
+ "emotional-data-model",
25
+ "deepadata",
26
+ "llm",
27
+ "extraction"
28
+ ],
29
+ "author": "DeepAData",
30
+ "license": "MIT",
31
+ "dependencies": {
32
+ "@anthropic-ai/sdk": "^0.52.0",
33
+ "openai": "^6.17.0",
34
+ "zod": "^3.23.8"
35
+ },
36
+ "devDependencies": {
37
+ "@types/node": "^22.10.0",
38
+ "rimraf": "^6.0.1",
39
+ "tsx": "^4.19.0",
40
+ "typescript": "^5.7.0",
41
+ "vitest": "^2.1.0"
42
+ },
43
+ "peerDependencies": {
44
+ "deepadata-ddna-tools": ">=0.1.0"
45
+ },
46
+ "peerDependenciesMeta": {
47
+ "deepadata-ddna-tools": {
48
+ "optional": true
49
+ }
50
+ },
51
+ "engines": {
52
+ "node": ">=18.0.0"
53
+ },
54
+ "files": [
55
+ "dist",
56
+ "README.md",
57
+ "LICENSE"
58
+ ]
59
+ }