@murphai/contracts 0.1.1

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 (89) hide show
  1. package/LICENSE +674 -0
  2. package/README.md +24 -0
  3. package/dist/bank-entities.d.ts +35 -0
  4. package/dist/bank-entities.d.ts.map +1 -0
  5. package/dist/bank-entities.js +164 -0
  6. package/dist/bank-entities.js.map +1 -0
  7. package/dist/command-capabilities.d.ts +50 -0
  8. package/dist/command-capabilities.d.ts.map +1 -0
  9. package/dist/command-capabilities.js +149 -0
  10. package/dist/command-capabilities.js.map +1 -0
  11. package/dist/constants.d.ts +149 -0
  12. package/dist/constants.d.ts.map +1 -0
  13. package/dist/constants.js +232 -0
  14. package/dist/constants.js.map +1 -0
  15. package/dist/examples.d.ts +31 -0
  16. package/dist/examples.d.ts.map +1 -0
  17. package/dist/examples.js +943 -0
  18. package/dist/examples.js.map +1 -0
  19. package/dist/frontmatter.d.ts +28 -0
  20. package/dist/frontmatter.d.ts.map +1 -0
  21. package/dist/frontmatter.js +272 -0
  22. package/dist/frontmatter.js.map +1 -0
  23. package/dist/health-entities.d.ts +87 -0
  24. package/dist/health-entities.d.ts.map +1 -0
  25. package/dist/health-entities.js +349 -0
  26. package/dist/health-entities.js.map +1 -0
  27. package/dist/ids.d.ts +10 -0
  28. package/dist/ids.d.ts.map +1 -0
  29. package/dist/ids.js +27 -0
  30. package/dist/ids.js.map +1 -0
  31. package/dist/index.d.ts +16 -0
  32. package/dist/index.d.ts.map +1 -0
  33. package/dist/index.js +16 -0
  34. package/dist/index.js.map +1 -0
  35. package/dist/registry-helpers.d.ts +31 -0
  36. package/dist/registry-helpers.d.ts.map +1 -0
  37. package/dist/registry-helpers.js +53 -0
  38. package/dist/registry-helpers.js.map +1 -0
  39. package/dist/schemas.d.ts +47 -0
  40. package/dist/schemas.d.ts.map +1 -0
  41. package/dist/schemas.js +50 -0
  42. package/dist/schemas.js.map +1 -0
  43. package/dist/scripts/generate-json-schema.js +13 -0
  44. package/dist/scripts/generate-json-schema.js.map +1 -0
  45. package/dist/scripts/verify.js +230 -0
  46. package/dist/scripts/verify.js.map +1 -0
  47. package/dist/shares.d.ts +715 -0
  48. package/dist/shares.d.ts.map +1 -0
  49. package/dist/shares.js +469 -0
  50. package/dist/shares.js.map +1 -0
  51. package/dist/time.d.ts +25 -0
  52. package/dist/time.d.ts.map +1 -0
  53. package/dist/time.js +241 -0
  54. package/dist/time.js.map +1 -0
  55. package/dist/tsconfig.build.tsbuildinfo +1 -0
  56. package/dist/types.d.ts +34 -0
  57. package/dist/types.d.ts.map +1 -0
  58. package/dist/types.js +2 -0
  59. package/dist/types.js.map +1 -0
  60. package/dist/validate.d.ts +18 -0
  61. package/dist/validate.d.ts.map +1 -0
  62. package/dist/validate.js +129 -0
  63. package/dist/validate.js.map +1 -0
  64. package/dist/zod.d.ts +1626 -0
  65. package/dist/zod.d.ts.map +1 -0
  66. package/dist/zod.js +834 -0
  67. package/dist/zod.js.map +1 -0
  68. package/generated/assessment-response.schema.json +101 -0
  69. package/generated/audit-record.schema.json +141 -0
  70. package/generated/event-record.schema.json +2708 -0
  71. package/generated/frontmatter-allergy.schema.json +82 -0
  72. package/generated/frontmatter-condition.schema.json +101 -0
  73. package/generated/frontmatter-core.schema.json +51 -0
  74. package/generated/frontmatter-experiment.schema.json +70 -0
  75. package/generated/frontmatter-family-member.schema.json +68 -0
  76. package/generated/frontmatter-food.schema.json +128 -0
  77. package/generated/frontmatter-genetic-variant.schema.json +81 -0
  78. package/generated/frontmatter-goal.schema.json +116 -0
  79. package/generated/frontmatter-journal-day.schema.json +52 -0
  80. package/generated/frontmatter-profile-current.schema.json +55 -0
  81. package/generated/frontmatter-protocol.schema.json +153 -0
  82. package/generated/frontmatter-provider.schema.json +81 -0
  83. package/generated/frontmatter-recipe.schema.json +124 -0
  84. package/generated/frontmatter-workout-format.schema.json +163 -0
  85. package/generated/inbox-capture-record.schema.json +332 -0
  86. package/generated/profile-snapshot.schema.json +131 -0
  87. package/generated/sample-record.schema.json +726 -0
  88. package/generated/vault-metadata.schema.json +324 -0
  89. package/package.json +69 -0
@@ -0,0 +1,82 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "type": "object",
4
+ "properties": {
5
+ "schemaVersion": {
6
+ "type": "string",
7
+ "const": "murph.frontmatter.allergy.v1"
8
+ },
9
+ "docType": {
10
+ "type": "string",
11
+ "const": "allergy"
12
+ },
13
+ "allergyId": {
14
+ "type": "string",
15
+ "pattern": "^alg_[0-9A-HJKMNP-TV-Z]{26}$"
16
+ },
17
+ "slug": {
18
+ "type": "string",
19
+ "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
20
+ },
21
+ "title": {
22
+ "type": "string",
23
+ "minLength": 1,
24
+ "maxLength": 160
25
+ },
26
+ "substance": {
27
+ "type": "string",
28
+ "minLength": 1,
29
+ "maxLength": 160
30
+ },
31
+ "status": {
32
+ "type": "string",
33
+ "enum": [
34
+ "active",
35
+ "inactive",
36
+ "resolved"
37
+ ]
38
+ },
39
+ "criticality": {
40
+ "type": "string",
41
+ "enum": [
42
+ "low",
43
+ "high",
44
+ "unable_to_assess"
45
+ ]
46
+ },
47
+ "reaction": {
48
+ "type": "string",
49
+ "minLength": 1,
50
+ "maxLength": 160
51
+ },
52
+ "recordedOn": {
53
+ "type": "string",
54
+ "format": "date"
55
+ },
56
+ "relatedConditionIds": {
57
+ "type": "array",
58
+ "items": {
59
+ "type": "string",
60
+ "pattern": "^cond_[0-9A-HJKMNP-TV-Z]{26}$"
61
+ },
62
+ "uniqueItems": true
63
+ },
64
+ "note": {
65
+ "type": "string",
66
+ "minLength": 1,
67
+ "maxLength": 4000
68
+ }
69
+ },
70
+ "required": [
71
+ "schemaVersion",
72
+ "docType",
73
+ "allergyId",
74
+ "slug",
75
+ "title",
76
+ "substance",
77
+ "status"
78
+ ],
79
+ "additionalProperties": false,
80
+ "$id": "@murphai/contracts/frontmatter-allergy.schema.json",
81
+ "title": "Murph Allergy Frontmatter"
82
+ }
@@ -0,0 +1,101 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "type": "object",
4
+ "properties": {
5
+ "schemaVersion": {
6
+ "type": "string",
7
+ "const": "murph.frontmatter.condition.v1"
8
+ },
9
+ "docType": {
10
+ "type": "string",
11
+ "const": "condition"
12
+ },
13
+ "conditionId": {
14
+ "type": "string",
15
+ "pattern": "^cond_[0-9A-HJKMNP-TV-Z]{26}$"
16
+ },
17
+ "slug": {
18
+ "type": "string",
19
+ "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
20
+ },
21
+ "title": {
22
+ "type": "string",
23
+ "minLength": 1,
24
+ "maxLength": 160
25
+ },
26
+ "clinicalStatus": {
27
+ "type": "string",
28
+ "enum": [
29
+ "active",
30
+ "inactive",
31
+ "resolved"
32
+ ]
33
+ },
34
+ "verificationStatus": {
35
+ "type": "string",
36
+ "enum": [
37
+ "unconfirmed",
38
+ "provisional",
39
+ "confirmed",
40
+ "refuted"
41
+ ]
42
+ },
43
+ "assertedOn": {
44
+ "type": "string",
45
+ "format": "date"
46
+ },
47
+ "resolvedOn": {
48
+ "type": "string",
49
+ "format": "date"
50
+ },
51
+ "severity": {
52
+ "type": "string",
53
+ "enum": [
54
+ "mild",
55
+ "moderate",
56
+ "severe"
57
+ ]
58
+ },
59
+ "bodySites": {
60
+ "type": "array",
61
+ "items": {
62
+ "type": "string",
63
+ "minLength": 1,
64
+ "maxLength": 120
65
+ },
66
+ "uniqueItems": true
67
+ },
68
+ "relatedGoalIds": {
69
+ "type": "array",
70
+ "items": {
71
+ "type": "string",
72
+ "pattern": "^goal_[0-9A-HJKMNP-TV-Z]{26}$"
73
+ },
74
+ "uniqueItems": true
75
+ },
76
+ "relatedProtocolIds": {
77
+ "type": "array",
78
+ "items": {
79
+ "type": "string",
80
+ "pattern": "^prot_[0-9A-HJKMNP-TV-Z]{26}$"
81
+ },
82
+ "uniqueItems": true
83
+ },
84
+ "note": {
85
+ "type": "string",
86
+ "minLength": 1,
87
+ "maxLength": 4000
88
+ }
89
+ },
90
+ "required": [
91
+ "schemaVersion",
92
+ "docType",
93
+ "conditionId",
94
+ "slug",
95
+ "title",
96
+ "clinicalStatus"
97
+ ],
98
+ "additionalProperties": false,
99
+ "$id": "@murphai/contracts/frontmatter-condition.schema.json",
100
+ "title": "Murph Condition Frontmatter"
101
+ }
@@ -0,0 +1,51 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "type": "object",
4
+ "properties": {
5
+ "schemaVersion": {
6
+ "type": "string",
7
+ "const": "murph.frontmatter.core.v1"
8
+ },
9
+ "docType": {
10
+ "type": "string",
11
+ "const": "core"
12
+ },
13
+ "vaultId": {
14
+ "type": "string",
15
+ "pattern": "^vault_[0-9A-HJKMNP-TV-Z]{26}$"
16
+ },
17
+ "title": {
18
+ "type": "string",
19
+ "minLength": 1,
20
+ "maxLength": 160
21
+ },
22
+ "timezone": {
23
+ "type": "string",
24
+ "minLength": 3,
25
+ "maxLength": 64
26
+ },
27
+ "updatedAt": {
28
+ "type": "string",
29
+ "format": "date-time"
30
+ },
31
+ "activeExperimentSlugs": {
32
+ "type": "array",
33
+ "items": {
34
+ "type": "string",
35
+ "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
36
+ },
37
+ "uniqueItems": true
38
+ }
39
+ },
40
+ "required": [
41
+ "schemaVersion",
42
+ "docType",
43
+ "vaultId",
44
+ "title",
45
+ "timezone",
46
+ "updatedAt"
47
+ ],
48
+ "additionalProperties": false,
49
+ "$id": "@murphai/contracts/frontmatter-core.schema.json",
50
+ "title": "Murph CORE Frontmatter"
51
+ }
@@ -0,0 +1,70 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "type": "object",
4
+ "properties": {
5
+ "schemaVersion": {
6
+ "type": "string",
7
+ "const": "murph.frontmatter.experiment.v1"
8
+ },
9
+ "docType": {
10
+ "type": "string",
11
+ "const": "experiment"
12
+ },
13
+ "experimentId": {
14
+ "type": "string",
15
+ "pattern": "^exp_[0-9A-HJKMNP-TV-Z]{26}$"
16
+ },
17
+ "slug": {
18
+ "type": "string",
19
+ "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
20
+ },
21
+ "status": {
22
+ "type": "string",
23
+ "enum": [
24
+ "planned",
25
+ "active",
26
+ "paused",
27
+ "completed",
28
+ "abandoned"
29
+ ]
30
+ },
31
+ "title": {
32
+ "type": "string",
33
+ "minLength": 1,
34
+ "maxLength": 160
35
+ },
36
+ "startedOn": {
37
+ "type": "string",
38
+ "format": "date"
39
+ },
40
+ "endedOn": {
41
+ "type": "string",
42
+ "format": "date"
43
+ },
44
+ "hypothesis": {
45
+ "type": "string",
46
+ "minLength": 1,
47
+ "maxLength": 4000
48
+ },
49
+ "tags": {
50
+ "type": "array",
51
+ "items": {
52
+ "type": "string",
53
+ "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
54
+ },
55
+ "uniqueItems": true
56
+ }
57
+ },
58
+ "required": [
59
+ "schemaVersion",
60
+ "docType",
61
+ "experimentId",
62
+ "slug",
63
+ "status",
64
+ "title",
65
+ "startedOn"
66
+ ],
67
+ "additionalProperties": false,
68
+ "$id": "@murphai/contracts/frontmatter-experiment.schema.json",
69
+ "title": "Murph Experiment Frontmatter"
70
+ }
@@ -0,0 +1,68 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "type": "object",
4
+ "properties": {
5
+ "schemaVersion": {
6
+ "type": "string",
7
+ "const": "murph.frontmatter.family-member.v1"
8
+ },
9
+ "docType": {
10
+ "type": "string",
11
+ "const": "family_member"
12
+ },
13
+ "familyMemberId": {
14
+ "type": "string",
15
+ "pattern": "^fam_[0-9A-HJKMNP-TV-Z]{26}$"
16
+ },
17
+ "slug": {
18
+ "type": "string",
19
+ "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
20
+ },
21
+ "title": {
22
+ "type": "string",
23
+ "minLength": 1,
24
+ "maxLength": 160
25
+ },
26
+ "relationship": {
27
+ "type": "string",
28
+ "minLength": 1,
29
+ "maxLength": 120
30
+ },
31
+ "conditions": {
32
+ "type": "array",
33
+ "items": {
34
+ "type": "string",
35
+ "minLength": 1,
36
+ "maxLength": 160
37
+ },
38
+ "uniqueItems": true
39
+ },
40
+ "deceased": {
41
+ "type": "boolean"
42
+ },
43
+ "note": {
44
+ "type": "string",
45
+ "minLength": 1,
46
+ "maxLength": 4000
47
+ },
48
+ "relatedVariantIds": {
49
+ "type": "array",
50
+ "items": {
51
+ "type": "string",
52
+ "pattern": "^var_[0-9A-HJKMNP-TV-Z]{26}$"
53
+ },
54
+ "uniqueItems": true
55
+ }
56
+ },
57
+ "required": [
58
+ "schemaVersion",
59
+ "docType",
60
+ "familyMemberId",
61
+ "slug",
62
+ "title",
63
+ "relationship"
64
+ ],
65
+ "additionalProperties": false,
66
+ "$id": "@murphai/contracts/frontmatter-family-member.schema.json",
67
+ "title": "Murph Family Member Frontmatter"
68
+ }
@@ -0,0 +1,128 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "type": "object",
4
+ "properties": {
5
+ "schemaVersion": {
6
+ "type": "string",
7
+ "const": "murph.frontmatter.food.v1"
8
+ },
9
+ "docType": {
10
+ "type": "string",
11
+ "const": "food"
12
+ },
13
+ "foodId": {
14
+ "type": "string",
15
+ "pattern": "^food_[0-9A-HJKMNP-TV-Z]{26}$"
16
+ },
17
+ "slug": {
18
+ "type": "string",
19
+ "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
20
+ },
21
+ "title": {
22
+ "type": "string",
23
+ "minLength": 1,
24
+ "maxLength": 160
25
+ },
26
+ "status": {
27
+ "type": "string",
28
+ "enum": [
29
+ "active",
30
+ "archived"
31
+ ]
32
+ },
33
+ "summary": {
34
+ "type": "string",
35
+ "minLength": 1,
36
+ "maxLength": 4000
37
+ },
38
+ "kind": {
39
+ "type": "string",
40
+ "minLength": 1,
41
+ "maxLength": 160
42
+ },
43
+ "brand": {
44
+ "type": "string",
45
+ "minLength": 1,
46
+ "maxLength": 160
47
+ },
48
+ "vendor": {
49
+ "type": "string",
50
+ "minLength": 1,
51
+ "maxLength": 160
52
+ },
53
+ "location": {
54
+ "type": "string",
55
+ "minLength": 1,
56
+ "maxLength": 160
57
+ },
58
+ "serving": {
59
+ "type": "string",
60
+ "minLength": 1,
61
+ "maxLength": 160
62
+ },
63
+ "aliases": {
64
+ "type": "array",
65
+ "items": {
66
+ "type": "string",
67
+ "minLength": 1,
68
+ "maxLength": 160
69
+ },
70
+ "uniqueItems": true
71
+ },
72
+ "ingredients": {
73
+ "maxItems": 100,
74
+ "type": "array",
75
+ "items": {
76
+ "type": "string",
77
+ "minLength": 1,
78
+ "maxLength": 4000
79
+ }
80
+ },
81
+ "tags": {
82
+ "type": "array",
83
+ "items": {
84
+ "type": "string",
85
+ "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
86
+ },
87
+ "uniqueItems": true
88
+ },
89
+ "note": {
90
+ "type": "string",
91
+ "minLength": 1,
92
+ "maxLength": 4000
93
+ },
94
+ "attachedProtocolIds": {
95
+ "maxItems": 32,
96
+ "type": "array",
97
+ "items": {
98
+ "type": "string",
99
+ "pattern": "^prot_[0-9A-HJKMNP-TV-Z]{26}$"
100
+ },
101
+ "uniqueItems": true
102
+ },
103
+ "autoLogDaily": {
104
+ "type": "object",
105
+ "properties": {
106
+ "time": {
107
+ "type": "string",
108
+ "pattern": "^(?:[01]\\d|2[0-3]):[0-5]\\d$"
109
+ }
110
+ },
111
+ "required": [
112
+ "time"
113
+ ],
114
+ "additionalProperties": false
115
+ }
116
+ },
117
+ "required": [
118
+ "schemaVersion",
119
+ "docType",
120
+ "foodId",
121
+ "slug",
122
+ "title",
123
+ "status"
124
+ ],
125
+ "additionalProperties": false,
126
+ "$id": "@murphai/contracts/frontmatter-food.schema.json",
127
+ "title": "Murph Food Frontmatter"
128
+ }
@@ -0,0 +1,81 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "type": "object",
4
+ "properties": {
5
+ "schemaVersion": {
6
+ "type": "string",
7
+ "const": "murph.frontmatter.genetic-variant.v1"
8
+ },
9
+ "docType": {
10
+ "type": "string",
11
+ "const": "genetic_variant"
12
+ },
13
+ "variantId": {
14
+ "type": "string",
15
+ "pattern": "^var_[0-9A-HJKMNP-TV-Z]{26}$"
16
+ },
17
+ "slug": {
18
+ "type": "string",
19
+ "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
20
+ },
21
+ "title": {
22
+ "type": "string",
23
+ "minLength": 1,
24
+ "maxLength": 160
25
+ },
26
+ "gene": {
27
+ "type": "string",
28
+ "minLength": 1,
29
+ "maxLength": 40
30
+ },
31
+ "zygosity": {
32
+ "type": "string",
33
+ "enum": [
34
+ "heterozygous",
35
+ "homozygous",
36
+ "compound_heterozygous",
37
+ "unknown"
38
+ ]
39
+ },
40
+ "significance": {
41
+ "type": "string",
42
+ "enum": [
43
+ "pathogenic",
44
+ "likely_pathogenic",
45
+ "risk_factor",
46
+ "vus",
47
+ "benign",
48
+ "unknown"
49
+ ]
50
+ },
51
+ "inheritance": {
52
+ "type": "string",
53
+ "minLength": 1,
54
+ "maxLength": 120
55
+ },
56
+ "sourceFamilyMemberIds": {
57
+ "type": "array",
58
+ "items": {
59
+ "type": "string",
60
+ "pattern": "^fam_[0-9A-HJKMNP-TV-Z]{26}$"
61
+ },
62
+ "uniqueItems": true
63
+ },
64
+ "note": {
65
+ "type": "string",
66
+ "minLength": 1,
67
+ "maxLength": 4000
68
+ }
69
+ },
70
+ "required": [
71
+ "schemaVersion",
72
+ "docType",
73
+ "variantId",
74
+ "slug",
75
+ "title",
76
+ "gene"
77
+ ],
78
+ "additionalProperties": false,
79
+ "$id": "@murphai/contracts/frontmatter-genetic-variant.schema.json",
80
+ "title": "Murph Genetic Variant Frontmatter"
81
+ }
@@ -0,0 +1,116 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "type": "object",
4
+ "properties": {
5
+ "schemaVersion": {
6
+ "type": "string",
7
+ "const": "murph.frontmatter.goal.v1"
8
+ },
9
+ "docType": {
10
+ "type": "string",
11
+ "const": "goal"
12
+ },
13
+ "goalId": {
14
+ "type": "string",
15
+ "pattern": "^goal_[0-9A-HJKMNP-TV-Z]{26}$"
16
+ },
17
+ "slug": {
18
+ "type": "string",
19
+ "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
20
+ },
21
+ "title": {
22
+ "type": "string",
23
+ "minLength": 1,
24
+ "maxLength": 160
25
+ },
26
+ "status": {
27
+ "type": "string",
28
+ "enum": [
29
+ "active",
30
+ "paused",
31
+ "completed",
32
+ "abandoned"
33
+ ]
34
+ },
35
+ "horizon": {
36
+ "type": "string",
37
+ "enum": [
38
+ "short_term",
39
+ "medium_term",
40
+ "long_term",
41
+ "ongoing"
42
+ ]
43
+ },
44
+ "priority": {
45
+ "type": "integer",
46
+ "minimum": 1,
47
+ "maximum": 10
48
+ },
49
+ "window": {
50
+ "type": "object",
51
+ "properties": {
52
+ "startAt": {
53
+ "type": "string",
54
+ "format": "date"
55
+ },
56
+ "targetAt": {
57
+ "type": "string",
58
+ "format": "date"
59
+ }
60
+ },
61
+ "required": [
62
+ "startAt"
63
+ ],
64
+ "additionalProperties": false
65
+ },
66
+ "parentGoalId": {
67
+ "anyOf": [
68
+ {
69
+ "type": "string",
70
+ "pattern": "^goal_[0-9A-HJKMNP-TV-Z]{26}$"
71
+ },
72
+ {
73
+ "type": "null"
74
+ }
75
+ ]
76
+ },
77
+ "relatedGoalIds": {
78
+ "type": "array",
79
+ "items": {
80
+ "type": "string",
81
+ "pattern": "^goal_[0-9A-HJKMNP-TV-Z]{26}$"
82
+ },
83
+ "uniqueItems": true
84
+ },
85
+ "relatedExperimentIds": {
86
+ "type": "array",
87
+ "items": {
88
+ "type": "string",
89
+ "pattern": "^exp_[0-9A-HJKMNP-TV-Z]{26}$"
90
+ },
91
+ "uniqueItems": true
92
+ },
93
+ "domains": {
94
+ "type": "array",
95
+ "items": {
96
+ "type": "string",
97
+ "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
98
+ },
99
+ "uniqueItems": true
100
+ }
101
+ },
102
+ "required": [
103
+ "schemaVersion",
104
+ "docType",
105
+ "goalId",
106
+ "slug",
107
+ "title",
108
+ "status",
109
+ "horizon",
110
+ "priority",
111
+ "window"
112
+ ],
113
+ "additionalProperties": false,
114
+ "$id": "@murphai/contracts/frontmatter-goal.schema.json",
115
+ "title": "Murph Goal Frontmatter"
116
+ }