@x12i/memorix-metadata 0.0.0-bootstrap.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.
Files changed (61) hide show
  1. package/README.md +35 -0
  2. package/dist/abstracts.d.ts +98 -0
  3. package/dist/abstracts.d.ts.map +1 -0
  4. package/dist/abstracts.js +419 -0
  5. package/dist/abstracts.js.map +1 -0
  6. package/dist/fingerprint.d.ts +11 -0
  7. package/dist/fingerprint.d.ts.map +1 -0
  8. package/dist/fingerprint.js +66 -0
  9. package/dist/fingerprint.js.map +1 -0
  10. package/dist/index.d.ts +8 -0
  11. package/dist/index.d.ts.map +1 -0
  12. package/dist/index.js +7 -0
  13. package/dist/index.js.map +1 -0
  14. package/dist/kind-fields.d.ts +13 -0
  15. package/dist/kind-fields.d.ts.map +1 -0
  16. package/dist/kind-fields.js +39 -0
  17. package/dist/kind-fields.js.map +1 -0
  18. package/dist/kinds.d.ts +21 -0
  19. package/dist/kinds.d.ts.map +1 -0
  20. package/dist/kinds.js +147 -0
  21. package/dist/kinds.js.map +1 -0
  22. package/dist/multi-agent-rule.d.ts +15 -0
  23. package/dist/multi-agent-rule.d.ts.map +1 -0
  24. package/dist/multi-agent-rule.js +30 -0
  25. package/dist/multi-agent-rule.js.map +1 -0
  26. package/dist/normalize.d.ts +26 -0
  27. package/dist/normalize.d.ts.map +1 -0
  28. package/dist/normalize.js +114 -0
  29. package/dist/normalize.js.map +1 -0
  30. package/dist/resolve.d.ts +85 -0
  31. package/dist/resolve.d.ts.map +1 -0
  32. package/dist/resolve.js +464 -0
  33. package/dist/resolve.js.map +1 -0
  34. package/dist/types.d.ts +277 -0
  35. package/dist/types.d.ts.map +1 -0
  36. package/dist/types.js +6 -0
  37. package/dist/types.js.map +1 -0
  38. package/dist/validate.d.ts +7 -0
  39. package/dist/validate.d.ts.map +1 -0
  40. package/dist/validate.js +563 -0
  41. package/dist/validate.js.map +1 -0
  42. package/examples/invalid/agent-classification.json +709 -0
  43. package/examples/invalid/broken-binding.json +688 -0
  44. package/examples/invalid/completion-mapping-with-exec-policy.json +659 -0
  45. package/examples/invalid/missing-parent.json +708 -0
  46. package/examples/invalid/operational-kind-root.json +720 -0
  47. package/examples/invalid/pipeline-unknown-service.json +611 -0
  48. package/examples/invalid/relationship-missing-rules.json +624 -0
  49. package/examples/invalid/relationship-with-storage.json +631 -0
  50. package/examples/invalid/service-with-secrets.json +679 -0
  51. package/examples/ops/normalized/pack.json +1010 -0
  52. package/examples/ops/raw/abstract-bindings.json +38 -0
  53. package/examples/ops/raw/abstract-types.json +28 -0
  54. package/examples/ops/raw/agents.json +33 -0
  55. package/examples/ops/raw/object-types.json +170 -0
  56. package/examples/ops/raw/pipelines-and-sources.json +185 -0
  57. package/examples/ops/raw/relationship-definitions.json +110 -0
  58. package/examples/ops/raw/view-definitions.json +46 -0
  59. package/examples/ops/raw/write-and-source-mappings.json +108 -0
  60. package/examples/project-ops/normalized/pack.json +944 -0
  61. package/package.json +49 -0
@@ -0,0 +1,38 @@
1
+ {
2
+ "bindings": [
3
+ {
4
+ "id": "people-employees-contractors",
5
+ "abstractType": "People",
6
+ "concreteObjectTypes": [
7
+ "employees",
8
+ "contractors"
9
+ ],
10
+ "union": true,
11
+ "notes": "People = Employees ∪ Contractors. No abstract records exist."
12
+ },
13
+ {
14
+ "id": "work-items-concrete",
15
+ "abstractType": "WorkItems",
16
+ "concreteObjectTypes": [
17
+ "work-items"
18
+ ],
19
+ "union": false
20
+ },
21
+ {
22
+ "id": "procedures-concrete",
23
+ "abstractType": "Procedures",
24
+ "concreteObjectTypes": [
25
+ "procedures"
26
+ ],
27
+ "union": false
28
+ },
29
+ {
30
+ "id": "activity-events-concrete",
31
+ "abstractType": "ActivityEvents",
32
+ "concreteObjectTypes": [
33
+ "activity-events"
34
+ ],
35
+ "union": false
36
+ }
37
+ ]
38
+ }
@@ -0,0 +1,28 @@
1
+ {
2
+ "abstractTypes": [
3
+ {
4
+ "id": "People",
5
+ "name": "People",
6
+ "meaning": "Employees and contractors who perform operational work",
7
+ "category": "entity"
8
+ },
9
+ {
10
+ "id": "WorkItems",
11
+ "name": "Work Items",
12
+ "meaning": "Units of operational work",
13
+ "category": "entity"
14
+ },
15
+ {
16
+ "id": "Procedures",
17
+ "name": "Procedures",
18
+ "meaning": "Reusable operational knowledge / playbooks",
19
+ "category": "knowledge"
20
+ },
21
+ {
22
+ "id": "ActivityEvents",
23
+ "name": "Activity Events",
24
+ "meaning": "Progress and activity reports about work items",
25
+ "category": "event"
26
+ }
27
+ ]
28
+ }
@@ -0,0 +1,33 @@
1
+ {
2
+ "agents": [
3
+ {
4
+ "id": "ops",
5
+ "name": "Operations (generic parent)",
6
+ "description": "Complete generic parent agent for ordinary operational work. Permanent Memorix acceptance pack.",
7
+ "parentAgentId": null,
8
+ "orgScopeExample": {
9
+ "orgId": "fieldstone",
10
+ "agentIds": [
11
+ "ops"
12
+ ]
13
+ }
14
+ },
15
+ {
16
+ "id": "project-ops",
17
+ "name": "Project Operations (child of ops)",
18
+ "description": "Inheritance smoke agent. Extends ops without replacing core definitions.",
19
+ "parentAgentId": "ops",
20
+ "overrides": {
21
+ "viewDefinitions": [
22
+ {
23
+ "id": "project-ops-work-items-list",
24
+ "kind": "list",
25
+ "objectType": "work-items",
26
+ "title": "Project work items",
27
+ "extends": "ops-work-items-list"
28
+ }
29
+ ]
30
+ }
31
+ }
32
+ ]
33
+ }
@@ -0,0 +1,170 @@
1
+ {
2
+ "objectTypes": [
3
+ {
4
+ "id": "employees",
5
+ "name": "Employees",
6
+ "dataCategory": "entity",
7
+ "abstractTypes": [
8
+ "People"
9
+ ],
10
+ "contentTypes": [
11
+ {
12
+ "id": "raw",
13
+ "required": true
14
+ },
15
+ {
16
+ "id": "snapshots",
17
+ "required": true
18
+ },
19
+ {
20
+ "id": "discovery",
21
+ "discriminator": {
22
+ "path": "data.discoveryType",
23
+ "required": false,
24
+ "defaultValue": "default"
25
+ }
26
+ },
27
+ {
28
+ "id": "analysis",
29
+ "discriminator": {
30
+ "path": "data.analysisType",
31
+ "required": false,
32
+ "defaultValue": "default"
33
+ }
34
+ },
35
+ {
36
+ "id": "relationships",
37
+ "notes": "Candidate store shape until Gate G4"
38
+ }
39
+ ]
40
+ },
41
+ {
42
+ "id": "contractors",
43
+ "name": "Contractors",
44
+ "dataCategory": "entity",
45
+ "abstractTypes": [
46
+ "People"
47
+ ],
48
+ "contentTypes": [
49
+ {
50
+ "id": "raw"
51
+ },
52
+ {
53
+ "id": "snapshots"
54
+ },
55
+ {
56
+ "id": "discovery",
57
+ "discriminator": {
58
+ "path": "data.discoveryType",
59
+ "required": false
60
+ }
61
+ },
62
+ {
63
+ "id": "analysis",
64
+ "discriminator": {
65
+ "path": "data.analysisType",
66
+ "required": false
67
+ }
68
+ },
69
+ {
70
+ "id": "relationships"
71
+ }
72
+ ]
73
+ },
74
+ {
75
+ "id": "work-items",
76
+ "name": "Work Items",
77
+ "dataCategory": "entity",
78
+ "abstractTypes": [
79
+ "WorkItems"
80
+ ],
81
+ "contentTypes": [
82
+ {
83
+ "id": "raw"
84
+ },
85
+ {
86
+ "id": "snapshots"
87
+ },
88
+ {
89
+ "id": "discovery",
90
+ "discriminator": {
91
+ "path": "data.discoveryType",
92
+ "required": false
93
+ }
94
+ },
95
+ {
96
+ "id": "analysis",
97
+ "discriminator": {
98
+ "path": "data.analysisType",
99
+ "required": false,
100
+ "defaultValue": "delivery-risk"
101
+ }
102
+ },
103
+ {
104
+ "id": "decisions",
105
+ "discriminator": {
106
+ "path": "data.decisionType",
107
+ "required": false,
108
+ "defaultValue": "priority"
109
+ }
110
+ },
111
+ {
112
+ "id": "workflow"
113
+ },
114
+ {
115
+ "id": "context",
116
+ "retention": "work-scoped-ttl"
117
+ },
118
+ {
119
+ "id": "relationships"
120
+ }
121
+ ],
122
+ "snapshotBuckets": {
123
+ "analytics": "optional",
124
+ "enrichment": "optional",
125
+ "insights": "optional"
126
+ }
127
+ },
128
+ {
129
+ "id": "procedures",
130
+ "name": "Procedures",
131
+ "dataCategory": "knowledge",
132
+ "abstractTypes": [
133
+ "Procedures"
134
+ ],
135
+ "contentTypes": [
136
+ {
137
+ "id": "raw"
138
+ },
139
+ {
140
+ "id": "snapshots",
141
+ "notes": "Persistent knowledge content"
142
+ },
143
+ {
144
+ "id": "relationships"
145
+ }
146
+ ],
147
+ "retention": "persistent-knowledge"
148
+ },
149
+ {
150
+ "id": "activity-events",
151
+ "name": "Activity Events",
152
+ "dataCategory": "event",
153
+ "abstractTypes": [
154
+ "ActivityEvents"
155
+ ],
156
+ "contentTypes": [
157
+ {
158
+ "id": "raw"
159
+ },
160
+ {
161
+ "id": "snapshots",
162
+ "notes": "Normalized event content"
163
+ },
164
+ {
165
+ "id": "relationships"
166
+ }
167
+ ]
168
+ }
169
+ ]
170
+ }
@@ -0,0 +1,185 @@
1
+ {
2
+ "pipelineDefinitions": [
3
+ {
4
+ "id": "ops-knowledge-pull",
5
+ "name": "Scheduled knowledge pull from ops-source",
6
+ "trigger": "scheduled",
7
+ "mode": "knowledge",
8
+ "steps": [
9
+ {
10
+ "id": "pull",
11
+ "kind": "memory-pull",
12
+ "sourceId": "ops-source"
13
+ },
14
+ {
15
+ "id": "land-raw",
16
+ "kind": "write-raw"
17
+ },
18
+ {
19
+ "id": "normalize",
20
+ "kind": "normalize"
21
+ },
22
+ {
23
+ "id": "promote",
24
+ "kind": "promote-snapshots"
25
+ }
26
+ ]
27
+ },
28
+ {
29
+ "id": "ops-context-pull",
30
+ "name": "On-demand work-item context pull",
31
+ "trigger": "on-demand",
32
+ "mode": "context",
33
+ "steps": [
34
+ {
35
+ "id": "pull",
36
+ "kind": "memory-pull",
37
+ "sourceId": "ops-source"
38
+ },
39
+ {
40
+ "id": "land-raw",
41
+ "kind": "write-raw"
42
+ },
43
+ {
44
+ "id": "normalize-context",
45
+ "kind": "normalize-context"
46
+ },
47
+ {
48
+ "id": "ttl",
49
+ "kind": "apply-ttl"
50
+ }
51
+ ]
52
+ },
53
+ {
54
+ "id": "ops-relationship-build",
55
+ "name": "Discover and write lightweight relationships",
56
+ "trigger": "explicit",
57
+ "steps": [
58
+ {
59
+ "id": "discover",
60
+ "kind": "relationship-discover"
61
+ },
62
+ {
63
+ "id": "write",
64
+ "kind": "relationship-write"
65
+ },
66
+ {
67
+ "id": "verify",
68
+ "kind": "relationship-verify"
69
+ }
70
+ ]
71
+ },
72
+ {
73
+ "id": "ops-analysis",
74
+ "name": "Work-item analysis sibling",
75
+ "trigger": "explicit",
76
+ "steps": [
77
+ {
78
+ "id": "analyze",
79
+ "kind": "analysis"
80
+ },
81
+ {
82
+ "id": "write-sibling",
83
+ "kind": "write-content",
84
+ "contentType": "analysis"
85
+ }
86
+ ]
87
+ },
88
+ {
89
+ "id": "ops-workflow",
90
+ "name": "Work-item workflow sibling",
91
+ "trigger": "explicit",
92
+ "steps": [
93
+ {
94
+ "id": "sync-workflow",
95
+ "kind": "workflow-sync"
96
+ },
97
+ {
98
+ "id": "write-sibling",
99
+ "kind": "write-content",
100
+ "contentType": "workflow"
101
+ }
102
+ ]
103
+ }
104
+ ],
105
+ "sources": [
106
+ {
107
+ "id": "ops-source",
108
+ "name": "Fieldstone ops fixture source",
109
+ "kind": "rest-fixture",
110
+ "baseUrlEnv": "OPS_SOURCE_URL",
111
+ "defaultBaseUrl": "http://127.0.0.1:7099",
112
+ "credentialRef": "ops-source-local",
113
+ "connectorRef": "ops-fixture",
114
+ "endpoints": [
115
+ "/employees",
116
+ "/contractors",
117
+ "/work-items",
118
+ "/activity-events",
119
+ "/procedures",
120
+ "/work-items/:id/context"
121
+ ],
122
+ "pagination": {
123
+ "style": "cursor",
124
+ "defaultPageSize": 50
125
+ },
126
+ "retention": {
127
+ "context": {
128
+ "ttlSeconds": 3600,
129
+ "discardOnWorkCompletion": true
130
+ }
131
+ },
132
+ "routes": [
133
+ {
134
+ "endpoint": "/procedures",
135
+ "objectType": "procedures",
136
+ "dataCategory": "knowledge",
137
+ "identityPath": "id",
138
+ "primaryKind": "procedureId",
139
+ "modes": ["knowledge"],
140
+ "pageSize": 2
141
+ },
142
+ {
143
+ "endpoint": "/work-items/:id/context",
144
+ "objectType": "work-items",
145
+ "dataCategory": "entity",
146
+ "identityPath": "workItemId",
147
+ "primaryKind": "workItemId",
148
+ "modes": ["context"]
149
+ },
150
+ {
151
+ "endpoint": "/work-items",
152
+ "objectType": "work-items",
153
+ "dataCategory": "entity",
154
+ "identityPath": "id",
155
+ "primaryKind": "workItemId",
156
+ "modes": ["knowledge"]
157
+ },
158
+ {
159
+ "endpoint": "/employees",
160
+ "objectType": "employees",
161
+ "dataCategory": "entity",
162
+ "identityPath": "id",
163
+ "primaryKind": "employeeId",
164
+ "modes": ["knowledge"]
165
+ },
166
+ {
167
+ "endpoint": "/contractors",
168
+ "objectType": "contractors",
169
+ "dataCategory": "entity",
170
+ "identityPath": "id",
171
+ "primaryKind": "contractorId",
172
+ "modes": ["knowledge"]
173
+ },
174
+ {
175
+ "endpoint": "/activity-events",
176
+ "objectType": "activity-events",
177
+ "dataCategory": "event",
178
+ "identityPath": "id",
179
+ "primaryKind": "activityEventId",
180
+ "modes": ["knowledge"]
181
+ }
182
+ ]
183
+ }
184
+ ]
185
+ }
@@ -0,0 +1,110 @@
1
+ {
2
+ "relationshipDefinitions": [
3
+ {
4
+ "id": "people-assigned-to-work-items",
5
+ "name": "People assigned to work items",
6
+ "meaning": "A person (employee or contractor) is assigned to perform a work item",
7
+ "directionality": "directed",
8
+ "from": {
9
+ "abstractType": "People",
10
+ "property": "assignedWorkItems"
11
+ },
12
+ "to": {
13
+ "abstractType": "WorkItems",
14
+ "property": "assignedPeople"
15
+ },
16
+ "discoveryRules": [
17
+ {
18
+ "id": "from-source-assignee",
19
+ "kind": "source-field",
20
+ "sourcePath": "assigneeId",
21
+ "notes": "ops-source work-items.assigneeId resolves across employees and contractors"
22
+ }
23
+ ]
24
+ },
25
+ {
26
+ "id": "work-items-use-procedures",
27
+ "name": "Work items use procedures",
28
+ "meaning": "A work item follows one or more reusable procedures",
29
+ "directionality": "directed",
30
+ "from": {
31
+ "abstractType": "WorkItems",
32
+ "property": "usedProcedures"
33
+ },
34
+ "to": {
35
+ "abstractType": "Procedures",
36
+ "property": "usedByWorkItems"
37
+ },
38
+ "discoveryRules": [
39
+ {
40
+ "id": "from-source-procedure-ids",
41
+ "kind": "source-field",
42
+ "sourcePath": "procedureIds"
43
+ }
44
+ ]
45
+ },
46
+ {
47
+ "id": "activity-events-about-work-items",
48
+ "name": "Activity events about work items",
49
+ "meaning": "An activity event reports progress on a work item",
50
+ "directionality": "directed",
51
+ "from": {
52
+ "abstractType": "ActivityEvents",
53
+ "property": "aboutWorkItems"
54
+ },
55
+ "to": {
56
+ "abstractType": "WorkItems",
57
+ "property": "activityEvents"
58
+ },
59
+ "discoveryRules": [
60
+ {
61
+ "id": "from-source-work-item-id",
62
+ "kind": "source-field",
63
+ "sourcePath": "workItemId"
64
+ }
65
+ ]
66
+ },
67
+ {
68
+ "id": "work-items-depend-on-work-items",
69
+ "name": "Work items depend on work items",
70
+ "meaning": "A work item cannot complete until another work item completes",
71
+ "directionality": "directed",
72
+ "from": {
73
+ "abstractType": "WorkItems",
74
+ "property": "dependsOn"
75
+ },
76
+ "to": {
77
+ "abstractType": "WorkItems",
78
+ "property": "dependedOnBy"
79
+ },
80
+ "discoveryRules": [
81
+ {
82
+ "id": "from-source-depends-on",
83
+ "kind": "source-field",
84
+ "sourcePath": "dependsOnIds"
85
+ }
86
+ ]
87
+ },
88
+ {
89
+ "id": "people-collaborate-with-people",
90
+ "name": "People collaborate with people",
91
+ "meaning": "Two people collaborate on operational work",
92
+ "directionality": "undirected",
93
+ "from": {
94
+ "abstractType": "People",
95
+ "property": "collaborators"
96
+ },
97
+ "to": {
98
+ "abstractType": "People",
99
+ "property": "collaborators"
100
+ },
101
+ "discoveryRules": [
102
+ {
103
+ "id": "from-source-collaborator-ids",
104
+ "kind": "source-field",
105
+ "sourcePath": "collaboratorIds"
106
+ }
107
+ ]
108
+ }
109
+ ]
110
+ }
@@ -0,0 +1,46 @@
1
+ {
2
+ "viewDefinitions": [
3
+ {
4
+ "id": "ops-work-items-list",
5
+ "kind": "list",
6
+ "objectType": "work-items",
7
+ "title": "Work items",
8
+ "columns": [
9
+ "concept.title",
10
+ "data.status",
11
+ "data.priority"
12
+ ]
13
+ },
14
+ {
15
+ "id": "ops-work-items-item",
16
+ "kind": "item",
17
+ "objectType": "work-items",
18
+ "title": "Work item",
19
+ "sections": [
20
+ "concept",
21
+ "data",
22
+ "workflow",
23
+ "analysis",
24
+ "decisions"
25
+ ]
26
+ },
27
+ {
28
+ "id": "ops-people-list",
29
+ "kind": "list",
30
+ "abstractType": "People",
31
+ "title": "People",
32
+ "columns": [
33
+ "concept.title",
34
+ "objectType",
35
+ "data.role"
36
+ ]
37
+ },
38
+ {
39
+ "id": "ops-work-item-expand-people",
40
+ "kind": "relationship-expansion",
41
+ "objectType": "work-items",
42
+ "relationshipDefinitionId": "people-assigned-to-work-items",
43
+ "direction": "to-from"
44
+ }
45
+ ]
46
+ }