@open-agreements/open-agreements 0.6.2 → 0.7.3

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 (92) hide show
  1. package/GEMINI.md +25 -0
  2. package/README.md +4 -4
  3. package/content/external/yc-safe-discount/metadata.yaml +1 -0
  4. package/content/external/yc-safe-mfn/metadata.yaml +1 -0
  5. package/content/external/yc-safe-pro-rata-side-letter/metadata.yaml +1 -0
  6. package/content/external/yc-safe-valuation-cap/metadata.yaml +1 -0
  7. package/content/recipes/nvca-certificate-of-incorporation/metadata.yaml +1 -0
  8. package/content/recipes/nvca-certificate-of-incorporation/replacements.json +1 -1
  9. package/content/recipes/nvca-indemnification-agreement/metadata.yaml +1 -0
  10. package/content/recipes/nvca-investors-rights-agreement/metadata.yaml +1 -0
  11. package/content/recipes/nvca-management-rights-letter/metadata.yaml +1 -0
  12. package/content/recipes/nvca-rofr-co-sale-agreement/metadata.yaml +1 -0
  13. package/content/recipes/nvca-stock-purchase-agreement/metadata.yaml +1 -0
  14. package/content/recipes/nvca-voting-agreement/metadata.yaml +1 -0
  15. package/content/templates/bonterms-mutual-nda/metadata.yaml +83 -0
  16. package/content/templates/bonterms-mutual-nda/signing.yaml +35 -0
  17. package/content/templates/bonterms-mutual-nda/template.docx +0 -0
  18. package/content/templates/bonterms-professional-services-agreement/metadata.yaml +1 -0
  19. package/content/templates/closing-checklist/metadata.yaml +1 -0
  20. package/content/templates/common-paper-ai-addendum/metadata.yaml +1 -0
  21. package/content/templates/common-paper-ai-addendum-in-app/metadata.yaml +1 -0
  22. package/content/templates/common-paper-amendment/metadata.yaml +1 -0
  23. package/content/templates/common-paper-business-associate-agreement/metadata.yaml +1 -0
  24. package/content/templates/common-paper-cloud-service-agreement/metadata.yaml +1 -0
  25. package/content/templates/common-paper-csa-click-through/metadata.yaml +1 -0
  26. package/content/templates/common-paper-csa-with-ai/metadata.yaml +1 -0
  27. package/content/templates/common-paper-csa-with-sla/metadata.yaml +1 -0
  28. package/content/templates/common-paper-csa-without-sla/metadata.yaml +1 -0
  29. package/content/templates/common-paper-data-processing-agreement/metadata.yaml +1 -0
  30. package/content/templates/common-paper-design-partner-agreement/metadata.yaml +1 -0
  31. package/content/templates/common-paper-independent-contractor-agreement/metadata.yaml +1 -0
  32. package/content/templates/common-paper-letter-of-intent/metadata.yaml +1 -0
  33. package/content/templates/common-paper-mutual-nda/metadata.yaml +1 -0
  34. package/content/templates/common-paper-one-way-nda/metadata.yaml +1 -0
  35. package/content/templates/common-paper-order-form/metadata.yaml +1 -0
  36. package/content/templates/common-paper-order-form-with-sla/metadata.yaml +1 -0
  37. package/content/templates/common-paper-partnership-agreement/metadata.yaml +1 -0
  38. package/content/templates/common-paper-pilot-agreement/metadata.yaml +1 -0
  39. package/content/templates/common-paper-professional-services-agreement/metadata.yaml +1 -0
  40. package/content/templates/common-paper-software-license-agreement/metadata.yaml +1 -0
  41. package/content/templates/common-paper-statement-of-work/metadata.yaml +1 -0
  42. package/content/templates/common-paper-term-sheet/metadata.yaml +1 -0
  43. package/content/templates/openagreements-employee-ip-inventions-assignment/metadata.yaml +1 -0
  44. package/content/templates/openagreements-employee-ip-inventions-assignment/template.docx +0 -0
  45. package/content/templates/openagreements-employment-confidentiality-acknowledgement/metadata.yaml +1 -0
  46. package/content/templates/openagreements-employment-confidentiality-acknowledgement/template.docx +0 -0
  47. package/content/templates/openagreements-employment-offer-letter/metadata.yaml +1 -0
  48. package/content/templates/openagreements-employment-offer-letter/template.docx +0 -0
  49. package/content/templates/openagreements-restrictive-covenant-wyoming/metadata.yaml +236 -0
  50. package/content/templates/openagreements-restrictive-covenant-wyoming/practice-note.md +103 -0
  51. package/content/templates/openagreements-restrictive-covenant-wyoming/template.docx +0 -0
  52. package/content/templates/openagreements-restrictive-covenant-wyoming/template.md +154 -0
  53. package/content/templates/working-group-list/metadata.yaml +1 -0
  54. package/dist/cli/index.d.ts.map +1 -1
  55. package/dist/cli/index.js +1 -2
  56. package/dist/cli/index.js.map +1 -1
  57. package/dist/commands/list.d.ts +0 -1
  58. package/dist/commands/list.d.ts.map +1 -1
  59. package/dist/commands/list.js +101 -104
  60. package/dist/commands/list.js.map +1 -1
  61. package/dist/core/employment/jurisdiction-rules.d.ts.map +1 -1
  62. package/dist/core/employment/jurisdiction-rules.js +69 -0
  63. package/dist/core/employment/jurisdiction-rules.js.map +1 -1
  64. package/dist/core/employment/memo.d.ts.map +1 -1
  65. package/dist/core/employment/memo.js +127 -0
  66. package/dist/core/employment/memo.js.map +1 -1
  67. package/dist/core/engine.d.ts.map +1 -1
  68. package/dist/core/engine.js +55 -2
  69. package/dist/core/engine.js.map +1 -1
  70. package/dist/core/fill-pipeline.d.ts +8 -0
  71. package/dist/core/fill-pipeline.d.ts.map +1 -1
  72. package/dist/core/fill-pipeline.js +63 -4
  73. package/dist/core/fill-pipeline.js.map +1 -1
  74. package/dist/core/metadata.d.ts +2 -0
  75. package/dist/core/metadata.d.ts.map +1 -1
  76. package/dist/core/metadata.js +1 -0
  77. package/dist/core/metadata.js.map +1 -1
  78. package/dist/core/signing-config.d.ts +46 -0
  79. package/dist/core/signing-config.d.ts.map +1 -0
  80. package/dist/core/signing-config.js +67 -0
  81. package/dist/core/signing-config.js.map +1 -0
  82. package/dist/core/template-listing.d.ts +2 -3
  83. package/dist/core/template-listing.d.ts.map +1 -1
  84. package/dist/core/template-listing.js +5 -9
  85. package/dist/core/template-listing.js.map +1 -1
  86. package/dist/core/unified-pipeline.d.ts +1 -0
  87. package/dist/core/unified-pipeline.d.ts.map +1 -1
  88. package/dist/core/unified-pipeline.js +1 -0
  89. package/dist/core/unified-pipeline.js.map +1 -1
  90. package/gemini-extension.json +30 -0
  91. package/package.json +10 -4
  92. package/server.json +2 -2
@@ -15,7 +15,6 @@ export function runList(opts = {}) {
15
15
  function runListJson(opts) {
16
16
  const results = [];
17
17
  const errors = [];
18
- const templatesOnly = opts.templatesOnly === true;
19
18
  // Templates
20
19
  for (const entry of listTemplateEntries()) {
21
20
  const id = entry.id;
@@ -24,7 +23,8 @@ function runListJson(opts) {
24
23
  const meta = loadMetadata(dir);
25
24
  results.push({
26
25
  name: id,
27
- category: categoryFromId(id),
26
+ display_name: meta.name,
27
+ category: meta.category ?? categoryFromId(id),
28
28
  description: meta.description ?? meta.name,
29
29
  license: meta.license,
30
30
  source_url: meta.source_url,
@@ -37,53 +37,53 @@ function runListJson(opts) {
37
37
  errors.push(`template ${id}: ${err instanceof Error ? err.message : String(err)}`);
38
38
  }
39
39
  }
40
- if (!templatesOnly) {
41
- // External templates
42
- for (const entry of listExternalEntries()) {
43
- const id = entry.id;
44
- const dir = entry.dir;
45
- try {
46
- const meta = loadExternalMetadata(dir);
47
- results.push({
48
- name: id,
49
- category: categoryFromId(id),
50
- description: meta.description ?? meta.name,
51
- license: meta.license,
52
- source_url: meta.source_url,
53
- source: sourceName(meta.source_url),
54
- attribution_text: meta.attribution_text,
55
- fields: mapFields(meta.fields, meta.priority_fields),
56
- });
57
- }
58
- catch (err) {
59
- errors.push(`external ${id}: ${err instanceof Error ? err.message : String(err)}`);
60
- }
40
+ // External templates
41
+ for (const entry of listExternalEntries()) {
42
+ const id = entry.id;
43
+ const dir = entry.dir;
44
+ try {
45
+ const meta = loadExternalMetadata(dir);
46
+ results.push({
47
+ name: id,
48
+ display_name: meta.name,
49
+ category: meta.category ?? categoryFromId(id),
50
+ description: meta.description ?? meta.name,
51
+ license: meta.license,
52
+ source_url: meta.source_url,
53
+ source: sourceName(meta.source_url),
54
+ attribution_text: meta.attribution_text,
55
+ fields: mapFields(meta.fields, meta.priority_fields),
56
+ });
61
57
  }
62
- // Recipes
63
- for (const entry of listRecipeEntries()) {
64
- const id = entry.id;
65
- const dir = entry.dir;
66
- try {
67
- const meta = loadRecipeMetadata(dir);
68
- const item = {
69
- name: id,
70
- category: categoryFromId(id),
71
- description: meta.description ?? meta.name,
72
- license_note: meta.license_note,
73
- source_url: meta.source_url,
74
- source: sourceName(meta.source_url),
75
- source_version: meta.source_version,
76
- optional: meta.optional,
77
- fields: mapFields(meta.fields, meta.priority_fields),
78
- };
79
- if (meta.market_data_citations) {
80
- item.market_data_citations = meta.market_data_citations;
81
- }
82
- results.push(item);
83
- }
84
- catch (err) {
85
- errors.push(`recipe ${id}: ${err instanceof Error ? err.message : String(err)}`);
58
+ catch (err) {
59
+ errors.push(`external ${id}: ${err instanceof Error ? err.message : String(err)}`);
60
+ }
61
+ }
62
+ // Recipes
63
+ for (const entry of listRecipeEntries()) {
64
+ const id = entry.id;
65
+ const dir = entry.dir;
66
+ try {
67
+ const meta = loadRecipeMetadata(dir);
68
+ const item = {
69
+ name: id,
70
+ display_name: meta.name,
71
+ category: meta.category ?? categoryFromId(id),
72
+ description: meta.description ?? meta.name,
73
+ license_note: meta.license_note,
74
+ source_url: meta.source_url,
75
+ source: sourceName(meta.source_url),
76
+ source_version: meta.source_version,
77
+ optional: meta.optional,
78
+ fields: mapFields(meta.fields, meta.priority_fields),
79
+ };
80
+ if (meta.market_data_citations) {
81
+ item.market_data_citations = meta.market_data_citations;
86
82
  }
83
+ results.push(item);
84
+ }
85
+ catch (err) {
86
+ errors.push(`recipe ${id}: ${err instanceof Error ? err.message : String(err)}`);
87
87
  }
88
88
  }
89
89
  results.sort((a, b) => a.name.localeCompare(b.name));
@@ -102,7 +102,6 @@ function runListJson(opts) {
102
102
  }
103
103
  function listAgreementsWithOptions(opts) {
104
104
  const rows = [];
105
- const templatesOnly = opts.templatesOnly === true;
106
105
  for (const entry of listTemplateEntries()) {
107
106
  const id = entry.id;
108
107
  const dir = entry.dir;
@@ -131,63 +130,61 @@ function listAgreementsWithOptions(opts) {
131
130
  });
132
131
  }
133
132
  }
134
- if (!templatesOnly) {
135
- for (const entry of listExternalEntries()) {
136
- const id = entry.id;
137
- const dir = entry.dir;
138
- try {
139
- const meta = loadExternalMetadata(dir);
140
- const priority = meta.priority_fields.length;
141
- rows.push({
142
- id,
143
- category: categoryFromId(id),
144
- license: meta.license,
145
- priority,
146
- total: meta.fields.length,
147
- source: sourceName(meta.source_url) || '—',
148
- sourceUrl: meta.source_url,
149
- });
150
- }
151
- catch {
152
- rows.push({
153
- id,
154
- category: categoryFromId(id),
155
- license: 'ERROR',
156
- priority: 0,
157
- total: 0,
158
- source: '—',
159
- sourceUrl: 'Could not load metadata',
160
- });
161
- }
133
+ for (const entry of listExternalEntries()) {
134
+ const id = entry.id;
135
+ const dir = entry.dir;
136
+ try {
137
+ const meta = loadExternalMetadata(dir);
138
+ const priority = meta.priority_fields.length;
139
+ rows.push({
140
+ id,
141
+ category: categoryFromId(id),
142
+ license: meta.license,
143
+ priority,
144
+ total: meta.fields.length,
145
+ source: sourceName(meta.source_url) || '—',
146
+ sourceUrl: meta.source_url,
147
+ });
162
148
  }
163
- for (const entry of listRecipeEntries()) {
164
- const id = entry.id;
165
- const dir = entry.dir;
166
- try {
167
- const meta = loadRecipeMetadata(dir);
168
- const priority = meta.priority_fields.length;
169
- const license = meta.optional ? 'recipe*' : 'recipe';
170
- rows.push({
171
- id,
172
- category: categoryFromId(id),
173
- license,
174
- priority,
175
- total: meta.fields.length,
176
- source: sourceName(meta.source_url) || '—',
177
- sourceUrl: meta.source_url,
178
- });
179
- }
180
- catch {
181
- rows.push({
182
- id,
183
- category: categoryFromId(id),
184
- license: 'ERROR',
185
- priority: 0,
186
- total: 0,
187
- source: '—',
188
- sourceUrl: 'Could not load metadata',
189
- });
190
- }
149
+ catch {
150
+ rows.push({
151
+ id,
152
+ category: categoryFromId(id),
153
+ license: 'ERROR',
154
+ priority: 0,
155
+ total: 0,
156
+ source: '—',
157
+ sourceUrl: 'Could not load metadata',
158
+ });
159
+ }
160
+ }
161
+ for (const entry of listRecipeEntries()) {
162
+ const id = entry.id;
163
+ const dir = entry.dir;
164
+ try {
165
+ const meta = loadRecipeMetadata(dir);
166
+ const priority = meta.priority_fields.length;
167
+ const license = meta.optional ? 'recipe*' : 'recipe';
168
+ rows.push({
169
+ id,
170
+ category: categoryFromId(id),
171
+ license,
172
+ priority,
173
+ total: meta.fields.length,
174
+ source: sourceName(meta.source_url) || '—',
175
+ sourceUrl: meta.source_url,
176
+ });
177
+ }
178
+ catch {
179
+ rows.push({
180
+ id,
181
+ category: categoryFromId(id),
182
+ license: 'ERROR',
183
+ priority: 0,
184
+ total: 0,
185
+ source: '—',
186
+ sourceUrl: 'Could not load metadata',
187
+ });
191
188
  }
192
189
  }
193
190
  if (rows.length === 0) {
@@ -1 +1 @@
1
- {"version":3,"file":"list.js","sourceRoot":"","sources":["../../src/commands/list.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"list.js","sourceRoot":"","sources":["../../src/commands/list.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"jurisdiction-rules.d.ts","sourceRoot":"","sources":["../../../src/core/employment/jurisdiction-rules.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,cAAc,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;AAEvD,MAAM,WAAW,uBAAuB;IACtC,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACtC,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACxC,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IACxC,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;CACxB;AAED,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,uBAAuB,CAAC;IACjC,OAAO,EAAE,MAAM,CAAC;IAChB,gBAAgB,EAAE,MAAM,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,cAAc,CAAC;CAC5B;AAED,eAAO,MAAM,6BAA6B,EAAE,gBAAgB,EA2D3D,CAAC"}
1
+ {"version":3,"file":"jurisdiction-rules.d.ts","sourceRoot":"","sources":["../../../src/core/employment/jurisdiction-rules.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,cAAc,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;AAEvD,MAAM,WAAW,uBAAuB;IACtC,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACtC,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACxC,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IACxC,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;CACxB;AAED,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,uBAAuB,CAAC;IACjC,OAAO,EAAE,MAAM,CAAC;IAChB,gBAAgB,EAAE,MAAM,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,cAAc,CAAC;CAC5B;AAED,eAAO,MAAM,6BAA6B,EAAE,gBAAgB,EAwI3D,CAAC"}
@@ -53,5 +53,74 @@ export const EMPLOYMENT_JURISDICTION_RULES = [
53
53
  source_date: '2024-01-01',
54
54
  confidence: 'medium',
55
55
  },
56
+ {
57
+ rule_id: 'emp-jur-wy-s1-23-108-scope-001',
58
+ jurisdiction: 'Wyoming',
59
+ category: 'restrictive_covenants',
60
+ trigger: {
61
+ template_ids: [
62
+ 'openagreements-restrictive-covenant-wyoming',
63
+ 'openagreements-employment-offer-letter',
64
+ ],
65
+ field_includes: {
66
+ governing_law: 'wyoming',
67
+ },
68
+ },
69
+ message: 'Wyoming Stat. section 1-23-108 (SF 107, effective July 1, 2025) voids most non-compete covenants except via specific statutory pathways: executive or management personnel, trade secret protection, sale of business, or training-expense recovery. Confirm applicability with licensed counsel.',
70
+ source_reference: 'Wyoming Statute section 1-23-108 (Senate File 107, 2025 Session).',
71
+ source_date: '2025-07-01',
72
+ confidence: 'high',
73
+ },
74
+ {
75
+ rule_id: 'emp-jur-wy-hassler-no-reform-001',
76
+ jurisdiction: 'Wyoming',
77
+ category: 'restrictive_covenants',
78
+ trigger: {
79
+ template_ids: [
80
+ 'openagreements-restrictive-covenant-wyoming',
81
+ ],
82
+ field_includes: {
83
+ governing_law: 'wyoming',
84
+ },
85
+ },
86
+ message: 'Wyoming courts may void overbroad restrictive covenants entirely rather than reform them. Hassler v. Circle C Resources, 2022 WY 28. Ensure each covenant is narrowly tailored to avoid full invalidation.',
87
+ source_reference: 'Hassler v. Circle C Resources, 2022 WY 28 (Wyoming Supreme Court).',
88
+ source_date: '2022-02-25',
89
+ confidence: 'high',
90
+ },
91
+ {
92
+ rule_id: 'emp-jur-wy-pathway-none-noncompete-001',
93
+ jurisdiction: 'Wyoming',
94
+ category: 'restrictive_covenants',
95
+ trigger: {
96
+ template_ids: [
97
+ 'openagreements-restrictive-covenant-wyoming',
98
+ ],
99
+ field_one_of: {
100
+ restriction_pathways: ['None', 'none'],
101
+ },
102
+ },
103
+ message: 'Restriction pathway is set to none, but non-compete-adjacent covenants (non-competition, non-dealing, or non-investment) may be included. Under Wyoming Stat. section 1-23-108, these provisions are likely void without a lawful statutory pathway.',
104
+ source_reference: 'Wyoming Statute section 1-23-108 (Senate File 107, 2025 Session).',
105
+ source_date: '2025-07-01',
106
+ confidence: 'high',
107
+ },
108
+ {
109
+ rule_id: 'emp-jur-wy-nonsolicitation-uncertainty-001',
110
+ jurisdiction: 'Wyoming',
111
+ category: 'restrictive_covenants',
112
+ trigger: {
113
+ template_ids: [
114
+ 'openagreements-restrictive-covenant-wyoming',
115
+ ],
116
+ field_includes: {
117
+ governing_law: 'wyoming',
118
+ },
119
+ },
120
+ message: 'Practitioner sources flag uncertainty about whether Wyoming Stat. section 1-23-108 could reach certain non-solicitation provisions depending on how they function. No separate Wyoming non-solicitation statute was identified in this review. Confirm enforceability with licensed counsel.',
121
+ source_reference: 'Littler Mendelson analysis of Wyoming SF 107; Faegre Drinker analysis noting broad "any person" statutory phrasing.',
122
+ source_date: '2025-07-01',
123
+ confidence: 'medium',
124
+ },
56
125
  ];
57
126
  //# sourceMappingURL=jurisdiction-rules.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"jurisdiction-rules.js","sourceRoot":"","sources":["../../../src/core/employment/jurisdiction-rules.ts"],"names":[],"mappings":"AAqBA,MAAM,CAAC,MAAM,6BAA6B,GAAuB;IAC/D;QACE,OAAO,EAAE,sCAAsC;QAC/C,YAAY,EAAE,YAAY;QAC1B,QAAQ,EAAE,uBAAuB;QACjC,OAAO,EAAE;YACP,YAAY,EAAE;gBACZ,wCAAwC;gBACxC,kDAAkD;aACnD;YACD,cAAc,EAAE;gBACd,aAAa,EAAE,YAAY;aAC5B;SACF;QACD,OAAO,EACL,0HAA0H;QAC5H,gBAAgB,EACd,2FAA2F;QAC7F,WAAW,EAAE,YAAY;QACzB,UAAU,EAAE,MAAM;KACnB;IACD;QACE,OAAO,EAAE,oCAAoC;QAC7C,YAAY,EAAE,YAAY;QAC1B,QAAQ,EAAE,qBAAqB;QAC/B,OAAO,EAAE;YACP,YAAY,EAAE,CAAC,kDAAkD,CAAC;YAClE,cAAc,EAAE;gBACd,aAAa,EAAE,YAAY;aAC5B;YACD,YAAY,EAAE;gBACZ,2BAA2B,EAAE,CAAC,aAAa,EAAE,MAAM,EAAE,KAAK,CAAC;aAC5D;SACF;QACD,OAAO,EACL,yHAAyH;QAC3H,gBAAgB,EAAE,8CAA8C;QAChE,WAAW,EAAE,YAAY;QACzB,UAAU,EAAE,MAAM;KACnB;IACD;QACE,OAAO,EAAE,sCAAsC;QAC/C,YAAY,EAAE,YAAY;QAC1B,QAAQ,EAAE,uBAAuB;QACjC,OAAO,EAAE;YACP,YAAY,EAAE;gBACZ,wCAAwC;gBACxC,kDAAkD;aACnD;YACD,cAAc,EAAE;gBACd,aAAa,EAAE,YAAY;aAC5B;SACF;QACD,OAAO,EACL,6HAA6H;QAC/H,gBAAgB,EAAE,2CAA2C;QAC7D,WAAW,EAAE,YAAY;QACzB,UAAU,EAAE,QAAQ;KACrB;CACF,CAAC"}
1
+ {"version":3,"file":"jurisdiction-rules.js","sourceRoot":"","sources":["../../../src/core/employment/jurisdiction-rules.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"memo.d.ts","sourceRoot":"","sources":["../../../src/core/employment/memo.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,gBAAgB,EAAgB,MAAM,gBAAgB,CAAC;AAErE,OAAO,EAGL,KAAK,cAAc,EACpB,MAAM,yBAAyB,CAAC;AAEjC,MAAM,MAAM,eAAe,GAAG,iBAAiB,GAAG,mBAAmB,GAAG,sBAAsB,CAAC;AAC/F,MAAM,MAAM,eAAe,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;AACxD,MAAM,MAAM,iBAAiB,GAAG,cAAc,CAAC;AAC/C,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,UAAU,GAAG,MAAM,CAAC;AAEtD,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,OAAO,GAAG,MAAM,GAAG,UAAU,CAAC;IACpC,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,qBAAqB;IACpC,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,eAAe,CAAC;IAC1B,QAAQ,EAAE,eAAe,CAAC;IAC1B,UAAU,EAAE,iBAAiB,CAAC;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,YAAY,EAAE,CAAC;IACzB,SAAS,EAAE,YAAY,EAAE,CAAC;IAC1B,mBAAmB,EAAE,MAAM,EAAE,CAAC;CAC/B;AAED,MAAM,WAAW,+BAA+B;IAC9C,sBAAsB,EAAE,OAAO,CAAC;IAChC,MAAM,EAAE,MAAM,CAAC;IACf,qBAAqB,EAAE,MAAM,EAAE,CAAC;IAChC,QAAQ,EAAE,MAAM,CAAC;IACjB,mBAAmB,EAAE,MAAM,EAAE,CAAC;CAC/B;AAED,MAAM,WAAW,cAAc;IAC7B,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,qBAAqB,EAAE,CAAC;IAClC,kBAAkB,EAAE,+BAA+B,CAAC;CACrD;AAED,MAAM,WAAW,6BAA6B;IAC5C,UAAU,EAAE,MAAM,CAAC;IACnB,gBAAgB,EAAE,gBAAgB,CAAC;IACnC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC;IACzC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AA2BD,eAAO,MAAM,0BAA0B,iPACyM,CAAC;AAoKjP,wBAAgB,sBAAsB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAElE;AAED,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAM9D;AAED,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAElE;AAED,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,6BAA6B,GAAG,cAAc,CA4D7F;AAED,wBAAgB,4BAA4B,CAAC,IAAI,EAAE,cAAc,GAAG,MAAM,CAyEzE"}
1
+ {"version":3,"file":"memo.d.ts","sourceRoot":"","sources":["../../../src/core/employment/memo.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,gBAAgB,EAAgB,MAAM,gBAAgB,CAAC;AAErE,OAAO,EAGL,KAAK,cAAc,EACpB,MAAM,yBAAyB,CAAC;AAEjC,MAAM,MAAM,eAAe,GAAG,iBAAiB,GAAG,mBAAmB,GAAG,sBAAsB,CAAC;AAC/F,MAAM,MAAM,eAAe,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;AACxD,MAAM,MAAM,iBAAiB,GAAG,cAAc,CAAC;AAC/C,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,UAAU,GAAG,MAAM,CAAC;AAEtD,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,OAAO,GAAG,MAAM,GAAG,UAAU,CAAC;IACpC,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,qBAAqB;IACpC,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,eAAe,CAAC;IAC1B,QAAQ,EAAE,eAAe,CAAC;IAC1B,UAAU,EAAE,iBAAiB,CAAC;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,YAAY,EAAE,CAAC;IACzB,SAAS,EAAE,YAAY,EAAE,CAAC;IAC1B,mBAAmB,EAAE,MAAM,EAAE,CAAC;CAC/B;AAED,MAAM,WAAW,+BAA+B;IAC9C,sBAAsB,EAAE,OAAO,CAAC;IAChC,MAAM,EAAE,MAAM,CAAC;IACf,qBAAqB,EAAE,MAAM,EAAE,CAAC;IAChC,QAAQ,EAAE,MAAM,CAAC;IACjB,mBAAmB,EAAE,MAAM,EAAE,CAAC;CAC/B;AAED,MAAM,WAAW,cAAc;IAC7B,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,qBAAqB,EAAE,CAAC;IAClC,kBAAkB,EAAE,+BAA+B,CAAC;CACrD;AAED,MAAM,WAAW,6BAA6B;IAC5C,UAAU,EAAE,MAAM,CAAC;IACnB,gBAAgB,EAAE,gBAAgB,CAAC;IACnC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC;IACzC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAqCD,eAAO,MAAM,0BAA0B,iPACyM,CAAC;AAwRjP,wBAAgB,sBAAsB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAElE;AAED,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAM9D;AAED,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAElE;AAED,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,6BAA6B,GAAG,cAAc,CA4D7F;AAED,wBAAgB,4BAA4B,CAAC,IAAI,EAAE,cAAc,GAAG,MAAM,CAyEzE"}
@@ -5,11 +5,13 @@ const EMPLOYMENT_TEMPLATE_IDS = new Set([
5
5
  'openagreements-employment-offer-letter',
6
6
  'openagreements-employee-ip-inventions-assignment',
7
7
  'openagreements-employment-confidentiality-acknowledgement',
8
+ 'openagreements-restrictive-covenant-wyoming',
8
9
  ]);
9
10
  const TEMPLATE_SOURCE_DATES = {
10
11
  'openagreements-employment-offer-letter': '2026-02-10',
11
12
  'openagreements-employee-ip-inventions-assignment': '2026-02-10',
12
13
  'openagreements-employment-confidentiality-acknowledgement': '2026-02-10',
14
+ 'openagreements-restrictive-covenant-wyoming': '2026-03-29',
13
15
  };
14
16
  const MEMO_VERSION = '1.0.0';
15
17
  export const EMPLOYMENT_MEMO_DISCLAIMER = 'This employment memo provides operational information about template fields and cited sources. It is not legal advice, does not recommend legal strategy, and does not predict legal outcomes. Consult a licensed attorney for legal advice.';
@@ -31,6 +33,46 @@ const ADVICE_BLOCK_PATTERNS = [
31
33
  /\bi advise\b/i,
32
34
  /\bthe right strategy\b/i,
33
35
  ];
36
+ function parseDurationMonths(value) {
37
+ const normalized = value.toLowerCase().trim();
38
+ const yearsMatch = normalized.match(/^(\d+)\s*years?$/);
39
+ if (yearsMatch)
40
+ return parseInt(yearsMatch[1], 10) * 12;
41
+ const monthsMatch = normalized.match(/^(\d+)\s*months?$/);
42
+ if (monthsMatch)
43
+ return parseInt(monthsMatch[1], 10);
44
+ return null;
45
+ }
46
+ function validateCovenantDuration(value) {
47
+ const months = parseDurationMonths(value);
48
+ if (months === null)
49
+ return null;
50
+ if (months > 60) {
51
+ return {
52
+ valid: false,
53
+ severity: 'high',
54
+ summary: `Duration of ${value} is almost certainly unenforceable. No US jurisdiction routinely upholds employment non-competes exceeding 5 years. Wyoming courts may void the entire agreement rather than reform it (Hassler v. Circle C Resources, 2022 WY 28).`,
55
+ citation: 'Hassler v. Circle C Resources, 2022 WY 28; Mayer Brown US Restrictive Covenants guidance.',
56
+ };
57
+ }
58
+ if (months > 24) {
59
+ return {
60
+ valid: false,
61
+ severity: 'high',
62
+ summary: `Duration of ${value} exceeds 24 months. No Wyoming court has upheld a non-compete exceeding 2 years. Hassler v. Circle C Resources (2022 WY 28) struck down a 24-month provision as overbroad. Mayer Brown guidance: 1-2 years is normally the outer range of reasonableness.`,
63
+ citation: 'Hassler v. Circle C Resources, 2022 WY 28; Mayer Brown US Restrictive Covenants (2024).',
64
+ };
65
+ }
66
+ if (months > 12) {
67
+ return {
68
+ valid: true,
69
+ severity: 'low',
70
+ summary: `Duration of ${value} exceeds 12 months. While 12 months is the most common enforceable duration, 24-month periods have been used in executive agreements. Ensure scope is narrowly tailored to support the longer duration.`,
71
+ citation: 'Compass Minerals SEC filing (24-month CEO provision); Mayer Brown US Restrictive Covenants (2024).',
72
+ };
73
+ }
74
+ return null;
75
+ }
34
76
  const CLAUSE_SIGNALS = {
35
77
  'openagreements-employment-offer-letter': [
36
78
  {
@@ -141,6 +183,63 @@ const CLAUSE_SIGNALS = {
141
183
  followUpQuestionWhenMissing: 'Can licensed counsel confirm whether post-employment confidentiality language is complete?',
142
184
  },
143
185
  ],
186
+ 'openagreements-restrictive-covenant-wyoming': [
187
+ {
188
+ id: 'restriction-pathways',
189
+ field: 'restriction_pathways',
190
+ missingSeverity: 'high',
191
+ missingSummary: 'Restriction pathway is blank. Under Wyoming Stat. section 1-23-108, non-compete-adjacent covenants require a lawful statutory pathway. The template cannot determine enforceability without this field.',
192
+ presentSummary: 'Restriction pathway is specified.',
193
+ followUpQuestionWhenMissing: 'Can licensed counsel confirm which Wyoming Stat. section 1-23-108 pathway applies to this employee?',
194
+ },
195
+ {
196
+ id: 'worker-category',
197
+ field: 'worker_category',
198
+ missingSeverity: 'high',
199
+ missingSummary: 'Worker category is blank. Wyoming Stat. section 1-23-108 enforceability depends on whether the employee is executive, management, professional staff, physician, or other.',
200
+ presentSummary: 'Worker category is specified.',
201
+ followUpQuestionWhenMissing: 'Can licensed counsel confirm the employee role classification under Wyoming Stat. section 1-23-108?',
202
+ },
203
+ {
204
+ id: 'competitive-business-definition',
205
+ field: 'competitive_business_definition',
206
+ missingSeverity: 'medium',
207
+ missingSummary: 'Competitive business definition is blank. An overbroad or missing definition weakens enforceability, especially given Wyoming courts may void the entire agreement rather than reform it.',
208
+ presentSummary: 'Competitive business definition is specified.',
209
+ followUpQuestionWhenMissing: 'Can licensed counsel confirm whether the competitive business definition is sufficiently narrow?',
210
+ },
211
+ {
212
+ id: 'covered-customer-period',
213
+ field: 'covered_customer_period',
214
+ missingSeverity: 'medium',
215
+ missingSummary: 'Covered customer lookback period is blank. The definition of Covered Customers requires a lookback period to determine scope.',
216
+ presentSummary: 'Covered customer lookback period is specified.',
217
+ },
218
+ {
219
+ id: 'noncompete-duration',
220
+ field: 'noncompete_duration',
221
+ missingSeverity: 'low',
222
+ missingSummary: 'Non-compete duration is blank.',
223
+ presentSummary: 'Non-compete duration is specified.',
224
+ validateValue: validateCovenantDuration,
225
+ },
226
+ {
227
+ id: 'employee-nonsolicit-duration',
228
+ field: 'employee_nonsolicit_duration',
229
+ missingSeverity: 'low',
230
+ missingSummary: 'Employee non-solicitation duration is blank.',
231
+ presentSummary: 'Employee non-solicitation duration is specified.',
232
+ validateValue: validateCovenantDuration,
233
+ },
234
+ {
235
+ id: 'customer-nonsolicit-duration',
236
+ field: 'customer_nonsolicit_duration',
237
+ missingSeverity: 'low',
238
+ missingSummary: 'Customer non-solicitation duration is blank.',
239
+ presentSummary: 'Customer non-solicitation duration is specified.',
240
+ validateValue: validateCovenantDuration,
241
+ },
242
+ ],
144
243
  };
145
244
  export function isEmploymentTemplateId(templateId) {
146
245
  return EMPLOYMENT_TEMPLATE_IDS.has(templateId);
@@ -326,6 +425,34 @@ function buildClauseFindings(args) {
326
425
  ? [signal.followUpQuestionWhenMissing]
327
426
  : [],
328
427
  });
428
+ if (isPresent && signal.validateValue) {
429
+ const validation = signal.validateValue(observedValue);
430
+ if (validation) {
431
+ findings.push({
432
+ id: `clause-${args.templateId}-${signal.id}-range`,
433
+ category: 'clause_presence',
434
+ severity: validation.severity,
435
+ confidence: 'high',
436
+ summary: validation.summary,
437
+ evidence: [
438
+ {
439
+ type: 'field',
440
+ reference: `${args.templateId}.${signal.field}`,
441
+ value: observedValue,
442
+ },
443
+ ],
444
+ citations: [
445
+ {
446
+ source: validation.citation,
447
+ source_date: sourceDate,
448
+ },
449
+ ],
450
+ follow_up_questions: validation.valid
451
+ ? []
452
+ : ['Can licensed counsel confirm whether this duration is enforceable under Wyoming law?'],
453
+ });
454
+ }
455
+ }
329
456
  }
330
457
  return findings;
331
458
  }