@happyvertical/smrt-playbooks 0.45.2 → 0.46.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.
package/dist/index.js CHANGED
@@ -15,7 +15,7 @@ var __exportAll = (all, no_symbols) => {
15
15
  };
16
16
  //#endregion
17
17
  //#region src/__smrt-register__.ts
18
- ObjectRegistry.registerPackageManifest(JSON.parse("{\"version\":\"1.0.0\",\"timestamp\":0,\"packageName\":\"@happyvertical/smrt-playbooks\",\"packageVersion\":\"0.45.2\",\"objects\":{\"@happyvertical/smrt-playbooks:PlaybookOverrideCollection\":{\"name\":\"playbookoverridecollection\",\"className\":\"PlaybookOverrideCollection\",\"qualifiedName\":\"@happyvertical/smrt-playbooks:PlaybookOverrideCollection\",\"collection\":\"playbookoverrides\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/playbooks/src/collections/PlaybookOverrideCollection.ts\",\"packageName\":\"@happyvertical/smrt-playbooks\",\"fields\":{},\"methods\":{\"getAppOverride\":{\"name\":\"getAppOverride\",\"async\":true,\"parameters\":[{\"name\":\"key\",\"type\":\"string\",\"optional\":false},{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"Promise<PlaybookOverride | null>\",\"isStatic\":false,\"isPublic\":true},\"getTenantOverride\":{\"name\":\"getTenantOverride\",\"async\":true,\"parameters\":[{\"name\":\"key\",\"type\":\"string\",\"optional\":false},{\"name\":\"tenantId\",\"type\":\"string\",\"optional\":false},{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"Promise<PlaybookOverride | null>\",\"isStatic\":false,\"isPublic\":true},\"getResolutionLayers\":{\"name\":\"getResolutionLayers\",\"async\":true,\"parameters\":[{\"name\":\"key\",\"type\":\"string\",\"optional\":false},{\"name\":\"tenantId\",\"type\":\"string | null\",\"optional\":true},{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"Promise<object>\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{\"tableName\":\"_smrt_playbook_overrides\"},\"extends\":\"SmrtCollection\",\"extendsTypeArg\":\"PlaybookOverride\",\"exportName\":\"PlaybookOverrideCollection\",\"collectionExportName\":\"PlaybookOverrideCollectionCollection\",\"schema\":{\"tableName\":\"_smrt_playbook_overrides\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"_smrt_playbook_overrides\\\" (\\n \\\"id\\\" UUID PRIMARY KEY NOT NULL,\\n \\\"slug\\\" TEXT NOT NULL,\\n \\\"context\\\" TEXT NOT NULL DEFAULT '',\\n \\\"created_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"updated_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp\\n);\",\"columns\":{\"id\":{\"type\":\"UUID\",\"primaryKey\":true,\"referenceKind\":\"id\",\"notNull\":true},\"slug\":{\"type\":\"TEXT\",\"notNull\":true},\"context\":{\"type\":\"TEXT\",\"notNull\":true,\"default\":\"\"},\"created_at\":{\"type\":\"TIMESTAMP\",\"notNull\":true,\"default\":\"current_timestamp\"},\"updated_at\":{\"type\":\"TIMESTAMP\",\"notNull\":true,\"default\":\"current_timestamp\"}},\"indexes\":[{\"name\":\"_smrt_playbook_overrides_slug_context_idx\",\"columns\":[\"slug\",\"context\"],\"unique\":true},{\"name\":\"_smrt_playbook_overrides_created_at_idx\",\"columns\":[\"created_at\"]}],\"version\":\"410e08c4\"}},\"@happyvertical/smrt-playbooks:PlaybookOverride\":{\"name\":\"playbookoverride\",\"className\":\"PlaybookOverride\",\"qualifiedName\":\"@happyvertical/smrt-playbooks:PlaybookOverride\",\"collection\":\"playbookoverrides\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/playbooks/src/models/PlaybookOverride.ts\",\"packageName\":\"@happyvertical/smrt-playbooks\",\"fields\":{\"key\":{\"type\":\"text\",\"required\":true,\"default\":\"\",\"_meta\":{\"required\":true}},\"tenantId\":{\"type\":\"text\",\"required\":false,\"_meta\":{\"nullable\":true}},\"title\":{\"type\":\"text\",\"required\":false,\"_meta\":{\"nullable\":true}},\"description\":{\"type\":\"text\",\"required\":false,\"_meta\":{\"nullable\":true}},\"planes\":{\"type\":\"text\",\"required\":false,\"_meta\":{\"nullable\":true}},\"onStepFailure\":{\"type\":\"text\",\"required\":false,\"_meta\":{\"nullable\":true}},\"enabled\":{\"type\":\"boolean\",\"required\":false,\"_meta\":{\"nullable\":true}},\"metadata\":{\"type\":\"text\",\"required\":false,\"_meta\":{\"nullable\":true}}},\"methods\":{\"getMetadata\":{\"name\":\"getMetadata\",\"async\":false,\"parameters\":[],\"returnType\":\"PlaybookMetadata\",\"isStatic\":false,\"isPublic\":true},\"setMetadata\":{\"name\":\"setMetadata\",\"async\":false,\"parameters\":[{\"name\":\"metadata\",\"type\":\"PlaybookMetadata | null\",\"optional\":false}],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true},\"getPlanes\":{\"name\":\"getPlanes\",\"async\":false,\"parameters\":[],\"returnType\":\"null\",\"isStatic\":false,\"isPublic\":true},\"setPlanes\":{\"name\":\"setPlanes\",\"async\":false,\"parameters\":[{\"name\":\"planes\",\"type\":\"null\",\"optional\":false}],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true},\"toPlaybookLayer\":{\"name\":\"toPlaybookLayer\",\"async\":false,\"parameters\":[],\"returnType\":\"PlaybookLayer\",\"isStatic\":false,\"isPublic\":true},\"save\":{\"name\":\"save\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise\",\"isStatic\":false,\"isPublic\":true},\"delete\":{\"name\":\"delete\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{\"tableName\":\"_smrt_playbook_overrides\",\"conflictColumns\":[\"key\",\"context\"],\"api\":{\"include\":[\"list\",\"get\",\"create\",\"update\",\"delete\"]},\"cli\":{\"include\":[\"list\",\"get\",\"create\",\"update\",\"delete\"],\"exclude\":[\"getMetadata\",\"setMetadata\",\"getPlanes\",\"setPlanes\",\"toPlaybookLayer\"]},\"mcp\":{\"include\":[]}},\"extends\":\"SmrtObject\",\"exportName\":\"PlaybookOverride\",\"collectionExportName\":\"PlaybookOverrideCollection\",\"validationRules\":[{\"field\":\"key\",\"rule\":\"required\",\"fieldType\":\"text\"}],\"schema\":{\"tableName\":\"_smrt_playbook_overrides\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"_smrt_playbook_overrides\\\" (\\n \\\"id\\\" UUID PRIMARY KEY NOT NULL,\\n \\\"slug\\\" TEXT NOT NULL,\\n \\\"context\\\" TEXT NOT NULL DEFAULT '',\\n \\\"created_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"updated_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"key\\\" TEXT NOT NULL DEFAULT '',\\n \\\"tenant_id\\\" TEXT,\\n \\\"title\\\" TEXT,\\n \\\"description\\\" TEXT,\\n \\\"planes\\\" TEXT,\\n \\\"on_step_failure\\\" TEXT,\\n \\\"enabled\\\" BOOLEAN,\\n \\\"metadata\\\" TEXT\\n);\",\"columns\":{\"id\":{\"type\":\"UUID\",\"primaryKey\":true,\"referenceKind\":\"id\",\"notNull\":true},\"slug\":{\"type\":\"TEXT\",\"notNull\":true},\"context\":{\"type\":\"TEXT\",\"notNull\":true,\"default\":\"\"},\"created_at\":{\"type\":\"TIMESTAMP\",\"notNull\":true,\"default\":\"current_timestamp\"},\"updated_at\":{\"type\":\"TIMESTAMP\",\"notNull\":true,\"default\":\"current_timestamp\"},\"key\":{\"type\":\"TEXT\",\"notNull\":true,\"unique\":false,\"default\":\"\"},\"tenant_id\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"title\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"description\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"planes\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"on_step_failure\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"enabled\":{\"type\":\"BOOLEAN\",\"notNull\":false,\"unique\":false},\"metadata\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false}},\"indexes\":[{\"name\":\"_smrt_playbook_overrides_key_context_idx\",\"columns\":[\"key\",\"context\"],\"unique\":true},{\"name\":\"_smrt_playbook_overrides_slug_context_idx\",\"columns\":[\"slug\",\"context\"]},{\"name\":\"_smrt_playbook_overrides_created_at_idx\",\"columns\":[\"created_at\"]}],\"version\":\"8aec8e13\"}}},\"moduleType\":\"smrt\",\"smrtDependencies\":[\"@happyvertical/smrt-core\",\"@happyvertical/smrt-tenancy\"]}"));
18
+ ObjectRegistry.registerPackageManifest(JSON.parse("{\"version\":\"1.0.0\",\"timestamp\":0,\"packageName\":\"@happyvertical/smrt-playbooks\",\"packageVersion\":\"0.46.0\",\"objects\":{\"@happyvertical/smrt-playbooks:PlaybookOverride\":{\"name\":\"playbookoverride\",\"className\":\"PlaybookOverride\",\"qualifiedName\":\"@happyvertical/smrt-playbooks:PlaybookOverride\",\"collection\":\"playbookoverrides\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/playbooks/src/models/PlaybookOverride.ts\",\"packageName\":\"@happyvertical/smrt-playbooks\",\"fields\":{\"key\":{\"type\":\"text\",\"required\":true,\"default\":\"\",\"_meta\":{\"required\":true}},\"tenantId\":{\"type\":\"text\",\"required\":false,\"_meta\":{\"nullable\":true}},\"title\":{\"type\":\"text\",\"required\":false,\"_meta\":{\"nullable\":true}},\"description\":{\"type\":\"text\",\"required\":false,\"_meta\":{\"nullable\":true}},\"planes\":{\"type\":\"text\",\"required\":false,\"_meta\":{\"nullable\":true}},\"onStepFailure\":{\"type\":\"text\",\"required\":false,\"_meta\":{\"nullable\":true}},\"enabled\":{\"type\":\"boolean\",\"required\":false,\"_meta\":{\"nullable\":true}},\"metadata\":{\"type\":\"text\",\"required\":false,\"_meta\":{\"nullable\":true}}},\"methods\":{\"getMetadata\":{\"name\":\"getMetadata\",\"async\":false,\"parameters\":[],\"returnType\":\"PlaybookMetadata\",\"isStatic\":false,\"isPublic\":true},\"setMetadata\":{\"name\":\"setMetadata\",\"async\":false,\"parameters\":[{\"name\":\"metadata\",\"type\":\"PlaybookMetadata | null\",\"optional\":false}],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true},\"getPlanes\":{\"name\":\"getPlanes\",\"async\":false,\"parameters\":[],\"returnType\":\"null\",\"isStatic\":false,\"isPublic\":true},\"setPlanes\":{\"name\":\"setPlanes\",\"async\":false,\"parameters\":[{\"name\":\"planes\",\"type\":\"null\",\"optional\":false}],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true},\"toPlaybookLayer\":{\"name\":\"toPlaybookLayer\",\"async\":false,\"parameters\":[],\"returnType\":\"PlaybookLayer\",\"isStatic\":false,\"isPublic\":true},\"save\":{\"name\":\"save\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise\",\"isStatic\":false,\"isPublic\":true},\"delete\":{\"name\":\"delete\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{\"tableName\":\"_smrt_playbook_overrides\",\"conflictColumns\":[\"key\",\"context\"],\"api\":{\"include\":[\"list\",\"get\",\"create\",\"update\",\"delete\"]},\"cli\":{\"include\":[\"list\",\"get\",\"create\",\"update\",\"delete\"],\"exclude\":[\"getMetadata\",\"setMetadata\",\"getPlanes\",\"setPlanes\",\"toPlaybookLayer\"]},\"mcp\":{\"include\":[]}},\"extends\":\"SmrtObject\",\"exportName\":\"PlaybookOverride\",\"collectionExportName\":\"PlaybookOverrideCollection\",\"validationRules\":[{\"field\":\"key\",\"rule\":\"required\",\"fieldType\":\"text\"}],\"schema\":{\"tableName\":\"_smrt_playbook_overrides\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"_smrt_playbook_overrides\\\" (\\n \\\"id\\\" UUID PRIMARY KEY NOT NULL,\\n \\\"slug\\\" TEXT NOT NULL,\\n \\\"context\\\" TEXT NOT NULL DEFAULT '',\\n \\\"created_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"updated_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"key\\\" TEXT NOT NULL DEFAULT '',\\n \\\"tenant_id\\\" TEXT,\\n \\\"title\\\" TEXT,\\n \\\"description\\\" TEXT,\\n \\\"planes\\\" TEXT,\\n \\\"on_step_failure\\\" TEXT,\\n \\\"enabled\\\" BOOLEAN,\\n \\\"metadata\\\" TEXT\\n);\",\"columns\":{\"id\":{\"type\":\"UUID\",\"primaryKey\":true,\"referenceKind\":\"id\",\"notNull\":true},\"slug\":{\"type\":\"TEXT\",\"notNull\":true},\"context\":{\"type\":\"TEXT\",\"notNull\":true,\"default\":\"\"},\"created_at\":{\"type\":\"TIMESTAMP\",\"notNull\":true,\"default\":\"current_timestamp\"},\"updated_at\":{\"type\":\"TIMESTAMP\",\"notNull\":true,\"default\":\"current_timestamp\"},\"key\":{\"type\":\"TEXT\",\"notNull\":true,\"unique\":false,\"default\":\"\"},\"tenant_id\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"title\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"description\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"planes\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"on_step_failure\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"enabled\":{\"type\":\"BOOLEAN\",\"notNull\":false,\"unique\":false},\"metadata\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false}},\"indexes\":[{\"name\":\"_smrt_playbook_overrides_key_context_idx\",\"columns\":[\"key\",\"context\"],\"unique\":true},{\"name\":\"_smrt_playbook_overrides_slug_context_idx\",\"columns\":[\"slug\",\"context\"]},{\"name\":\"_smrt_playbook_overrides_created_at_idx\",\"columns\":[\"created_at\"]}],\"version\":\"8aec8e13\"}},\"@happyvertical/smrt-playbooks:PlaybookOverrideCollection\":{\"name\":\"playbookoverridecollection\",\"className\":\"PlaybookOverrideCollection\",\"qualifiedName\":\"@happyvertical/smrt-playbooks:PlaybookOverrideCollection\",\"collection\":\"playbookoverrides\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/playbooks/src/collections/PlaybookOverrideCollection.ts\",\"packageName\":\"@happyvertical/smrt-playbooks\",\"fields\":{},\"methods\":{\"getAppOverride\":{\"name\":\"getAppOverride\",\"async\":true,\"parameters\":[{\"name\":\"key\",\"type\":\"string\",\"optional\":false},{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"Promise<PlaybookOverride | null>\",\"isStatic\":false,\"isPublic\":true},\"getTenantOverride\":{\"name\":\"getTenantOverride\",\"async\":true,\"parameters\":[{\"name\":\"key\",\"type\":\"string\",\"optional\":false},{\"name\":\"tenantId\",\"type\":\"string\",\"optional\":false},{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"Promise<PlaybookOverride | null>\",\"isStatic\":false,\"isPublic\":true},\"getResolutionLayers\":{\"name\":\"getResolutionLayers\",\"async\":true,\"parameters\":[{\"name\":\"key\",\"type\":\"string\",\"optional\":false},{\"name\":\"tenantId\",\"type\":\"string | null\",\"optional\":true},{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"Promise<object>\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{\"tableName\":\"_smrt_playbook_overrides\"},\"extends\":\"SmrtCollection\",\"extendsTypeArg\":\"PlaybookOverride\",\"exportName\":\"PlaybookOverrideCollection\",\"collectionExportName\":\"PlaybookOverrideCollectionCollection\",\"schema\":{\"tableName\":\"_smrt_playbook_overrides\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"_smrt_playbook_overrides\\\" (\\n \\\"id\\\" UUID PRIMARY KEY NOT NULL,\\n \\\"slug\\\" TEXT NOT NULL,\\n \\\"context\\\" TEXT NOT NULL DEFAULT '',\\n \\\"created_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"updated_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp\\n);\",\"columns\":{\"id\":{\"type\":\"UUID\",\"primaryKey\":true,\"referenceKind\":\"id\",\"notNull\":true},\"slug\":{\"type\":\"TEXT\",\"notNull\":true},\"context\":{\"type\":\"TEXT\",\"notNull\":true,\"default\":\"\"},\"created_at\":{\"type\":\"TIMESTAMP\",\"notNull\":true,\"default\":\"current_timestamp\"},\"updated_at\":{\"type\":\"TIMESTAMP\",\"notNull\":true,\"default\":\"current_timestamp\"}},\"indexes\":[{\"name\":\"_smrt_playbook_overrides_slug_context_idx\",\"columns\":[\"slug\",\"context\"],\"unique\":true},{\"name\":\"_smrt_playbook_overrides_created_at_idx\",\"columns\":[\"created_at\"]}],\"version\":\"410e08c4\"}}},\"moduleType\":\"smrt\",\"smrtDependencies\":[\"@happyvertical/smrt-core\",\"@happyvertical/smrt-tenancy\"]}"));
19
19
  //#endregion
20
20
  //#region src/cache.ts
21
21
  var PLAYBOOK_CACHE_TTL_MS = 3e4;
@@ -2,141 +2,8 @@
2
2
  "version": "1.0.0",
3
3
  "timestamp": 0,
4
4
  "packageName": "@happyvertical/smrt-playbooks",
5
- "packageVersion": "0.45.2",
5
+ "packageVersion": "0.46.0",
6
6
  "objects": {
7
- "@happyvertical/smrt-playbooks:PlaybookOverrideCollection": {
8
- "name": "playbookoverridecollection",
9
- "className": "PlaybookOverrideCollection",
10
- "qualifiedName": "@happyvertical/smrt-playbooks:PlaybookOverrideCollection",
11
- "collection": "playbookoverrides",
12
- "filePath": "/home/runner/work/smrt/smrt/packages/playbooks/src/collections/PlaybookOverrideCollection.ts",
13
- "packageName": "@happyvertical/smrt-playbooks",
14
- "fields": {},
15
- "methods": {
16
- "getAppOverride": {
17
- "name": "getAppOverride",
18
- "async": true,
19
- "parameters": [
20
- {
21
- "name": "key",
22
- "type": "string",
23
- "optional": false
24
- },
25
- {
26
- "name": "options",
27
- "type": "object",
28
- "optional": true
29
- }
30
- ],
31
- "returnType": "Promise<PlaybookOverride | null>",
32
- "isStatic": false,
33
- "isPublic": true
34
- },
35
- "getTenantOverride": {
36
- "name": "getTenantOverride",
37
- "async": true,
38
- "parameters": [
39
- {
40
- "name": "key",
41
- "type": "string",
42
- "optional": false
43
- },
44
- {
45
- "name": "tenantId",
46
- "type": "string",
47
- "optional": false
48
- },
49
- {
50
- "name": "options",
51
- "type": "object",
52
- "optional": true
53
- }
54
- ],
55
- "returnType": "Promise<PlaybookOverride | null>",
56
- "isStatic": false,
57
- "isPublic": true
58
- },
59
- "getResolutionLayers": {
60
- "name": "getResolutionLayers",
61
- "async": true,
62
- "parameters": [
63
- {
64
- "name": "key",
65
- "type": "string",
66
- "optional": false
67
- },
68
- {
69
- "name": "tenantId",
70
- "type": "string | null",
71
- "optional": true
72
- },
73
- {
74
- "name": "options",
75
- "type": "object",
76
- "optional": true
77
- }
78
- ],
79
- "returnType": "Promise<object>",
80
- "isStatic": false,
81
- "isPublic": true
82
- }
83
- },
84
- "decoratorConfig": {
85
- "tableName": "_smrt_playbook_overrides"
86
- },
87
- "extends": "SmrtCollection",
88
- "extendsTypeArg": "PlaybookOverride",
89
- "exportName": "PlaybookOverrideCollection",
90
- "collectionExportName": "PlaybookOverrideCollectionCollection",
91
- "schema": {
92
- "tableName": "_smrt_playbook_overrides",
93
- "ddl": "CREATE TABLE IF NOT EXISTS \"_smrt_playbook_overrides\" (\n \"id\" UUID PRIMARY KEY NOT NULL,\n \"slug\" TEXT NOT NULL,\n \"context\" TEXT NOT NULL DEFAULT '',\n \"created_at\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\n \"updated_at\" TIMESTAMP NOT NULL DEFAULT current_timestamp\n);",
94
- "columns": {
95
- "id": {
96
- "type": "UUID",
97
- "primaryKey": true,
98
- "referenceKind": "id",
99
- "notNull": true
100
- },
101
- "slug": {
102
- "type": "TEXT",
103
- "notNull": true
104
- },
105
- "context": {
106
- "type": "TEXT",
107
- "notNull": true,
108
- "default": ""
109
- },
110
- "created_at": {
111
- "type": "TIMESTAMP",
112
- "notNull": true,
113
- "default": "current_timestamp"
114
- },
115
- "updated_at": {
116
- "type": "TIMESTAMP",
117
- "notNull": true,
118
- "default": "current_timestamp"
119
- }
120
- },
121
- "indexes": [
122
- {
123
- "name": "_smrt_playbook_overrides_slug_context_idx",
124
- "columns": [
125
- "slug",
126
- "context"
127
- ],
128
- "unique": true
129
- },
130
- {
131
- "name": "_smrt_playbook_overrides_created_at_idx",
132
- "columns": [
133
- "created_at"
134
- ]
135
- }
136
- ],
137
- "version": "410e08c4"
138
- }
139
- },
140
7
  "@happyvertical/smrt-playbooks:PlaybookOverride": {
141
8
  "name": "playbookoverride",
142
9
  "className": "PlaybookOverride",
@@ -414,6 +281,139 @@
414
281
  ],
415
282
  "version": "8aec8e13"
416
283
  }
284
+ },
285
+ "@happyvertical/smrt-playbooks:PlaybookOverrideCollection": {
286
+ "name": "playbookoverridecollection",
287
+ "className": "PlaybookOverrideCollection",
288
+ "qualifiedName": "@happyvertical/smrt-playbooks:PlaybookOverrideCollection",
289
+ "collection": "playbookoverrides",
290
+ "filePath": "/home/runner/work/smrt/smrt/packages/playbooks/src/collections/PlaybookOverrideCollection.ts",
291
+ "packageName": "@happyvertical/smrt-playbooks",
292
+ "fields": {},
293
+ "methods": {
294
+ "getAppOverride": {
295
+ "name": "getAppOverride",
296
+ "async": true,
297
+ "parameters": [
298
+ {
299
+ "name": "key",
300
+ "type": "string",
301
+ "optional": false
302
+ },
303
+ {
304
+ "name": "options",
305
+ "type": "object",
306
+ "optional": true
307
+ }
308
+ ],
309
+ "returnType": "Promise<PlaybookOverride | null>",
310
+ "isStatic": false,
311
+ "isPublic": true
312
+ },
313
+ "getTenantOverride": {
314
+ "name": "getTenantOverride",
315
+ "async": true,
316
+ "parameters": [
317
+ {
318
+ "name": "key",
319
+ "type": "string",
320
+ "optional": false
321
+ },
322
+ {
323
+ "name": "tenantId",
324
+ "type": "string",
325
+ "optional": false
326
+ },
327
+ {
328
+ "name": "options",
329
+ "type": "object",
330
+ "optional": true
331
+ }
332
+ ],
333
+ "returnType": "Promise<PlaybookOverride | null>",
334
+ "isStatic": false,
335
+ "isPublic": true
336
+ },
337
+ "getResolutionLayers": {
338
+ "name": "getResolutionLayers",
339
+ "async": true,
340
+ "parameters": [
341
+ {
342
+ "name": "key",
343
+ "type": "string",
344
+ "optional": false
345
+ },
346
+ {
347
+ "name": "tenantId",
348
+ "type": "string | null",
349
+ "optional": true
350
+ },
351
+ {
352
+ "name": "options",
353
+ "type": "object",
354
+ "optional": true
355
+ }
356
+ ],
357
+ "returnType": "Promise<object>",
358
+ "isStatic": false,
359
+ "isPublic": true
360
+ }
361
+ },
362
+ "decoratorConfig": {
363
+ "tableName": "_smrt_playbook_overrides"
364
+ },
365
+ "extends": "SmrtCollection",
366
+ "extendsTypeArg": "PlaybookOverride",
367
+ "exportName": "PlaybookOverrideCollection",
368
+ "collectionExportName": "PlaybookOverrideCollectionCollection",
369
+ "schema": {
370
+ "tableName": "_smrt_playbook_overrides",
371
+ "ddl": "CREATE TABLE IF NOT EXISTS \"_smrt_playbook_overrides\" (\n \"id\" UUID PRIMARY KEY NOT NULL,\n \"slug\" TEXT NOT NULL,\n \"context\" TEXT NOT NULL DEFAULT '',\n \"created_at\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\n \"updated_at\" TIMESTAMP NOT NULL DEFAULT current_timestamp\n);",
372
+ "columns": {
373
+ "id": {
374
+ "type": "UUID",
375
+ "primaryKey": true,
376
+ "referenceKind": "id",
377
+ "notNull": true
378
+ },
379
+ "slug": {
380
+ "type": "TEXT",
381
+ "notNull": true
382
+ },
383
+ "context": {
384
+ "type": "TEXT",
385
+ "notNull": true,
386
+ "default": ""
387
+ },
388
+ "created_at": {
389
+ "type": "TIMESTAMP",
390
+ "notNull": true,
391
+ "default": "current_timestamp"
392
+ },
393
+ "updated_at": {
394
+ "type": "TIMESTAMP",
395
+ "notNull": true,
396
+ "default": "current_timestamp"
397
+ }
398
+ },
399
+ "indexes": [
400
+ {
401
+ "name": "_smrt_playbook_overrides_slug_context_idx",
402
+ "columns": [
403
+ "slug",
404
+ "context"
405
+ ],
406
+ "unique": true
407
+ },
408
+ {
409
+ "name": "_smrt_playbook_overrides_created_at_idx",
410
+ "columns": [
411
+ "created_at"
412
+ ]
413
+ }
414
+ ],
415
+ "version": "410e08c4"
416
+ }
417
417
  }
418
418
  },
419
419
  "moduleType": "smrt",
@@ -3,12 +3,12 @@
3
3
  "sensitiveFieldsExcluded": true,
4
4
  "generatedAt": "1970-01-01T00:00:00.000Z",
5
5
  "packageName": "@happyvertical/smrt-playbooks",
6
- "packageVersion": "0.45.2",
6
+ "packageVersion": "0.46.0",
7
7
  "sourceManifestPath": "dist/manifest.json",
8
8
  "agentDocPath": "AGENTS.md",
9
9
  "sourceHashes": {
10
- "manifest": "334bbcd047ddd8fdc66d3c820e5a6e6c651f6ba238383afea91dc62c5391345c",
11
- "packageJson": "137ad1c5764c7b2ae764287bfc7918347469048cb7c067291cabbf5e74a4ec62",
10
+ "manifest": "6feea8f52be712a24448665b6550874154e8a3d7463082064a5effab95ce6a97",
11
+ "packageJson": "c46c5988370edd41e67c99583c368322e2a93a28b147d12a5709ebe45421dd30",
12
12
  "agents": "db7f96be7f32be81a0df3e55532da96bb0bace194fb4314feafacbdeafebf6ae"
13
13
  },
14
14
  "exports": [
@@ -41,119 +41,6 @@
41
41
  "tags": [],
42
42
  "risks": [],
43
43
  "objects": [
44
- {
45
- "name": "PlaybookOverrideCollection",
46
- "qualifiedName": "@happyvertical/smrt-playbooks:PlaybookOverrideCollection",
47
- "collection": "playbookoverrides",
48
- "tableName": "_smrt_playbook_overrides",
49
- "packageName": "@happyvertical/smrt-playbooks",
50
- "extends": "SmrtCollection",
51
- "fields": [],
52
- "relationships": [],
53
- "methods": [
54
- "getAppOverride",
55
- "getResolutionLayers",
56
- "getTenantOverride"
57
- ],
58
- "methodSignatures": [
59
- {
60
- "name": "getAppOverride",
61
- "async": true,
62
- "params": [
63
- "key: string",
64
- "options?: object"
65
- ],
66
- "returns": "Promise<PlaybookOverride | null>"
67
- },
68
- {
69
- "name": "getResolutionLayers",
70
- "async": true,
71
- "params": [
72
- "key: string",
73
- "tenantId?: string | null",
74
- "options?: object"
75
- ],
76
- "returns": "Promise<object>"
77
- },
78
- {
79
- "name": "getTenantOverride",
80
- "async": true,
81
- "params": [
82
- "key: string",
83
- "tenantId: string",
84
- "options?: object"
85
- ],
86
- "returns": "Promise<PlaybookOverride | null>"
87
- }
88
- ],
89
- "surfaces": [
90
- {
91
- "kind": "api",
92
- "name": "playbookoverrides.getAppOverride",
93
- "operation": "getAppOverride",
94
- "objectName": "@happyvertical/smrt-playbooks:PlaybookOverrideCollection",
95
- "path": "/playbookoverrides/getAppOverride",
96
- "method": "POST"
97
- },
98
- {
99
- "kind": "api",
100
- "name": "playbookoverrides.getTenantOverride",
101
- "operation": "getTenantOverride",
102
- "objectName": "@happyvertical/smrt-playbooks:PlaybookOverrideCollection",
103
- "path": "/playbookoverrides/getTenantOverride",
104
- "method": "POST"
105
- },
106
- {
107
- "kind": "api",
108
- "name": "playbookoverrides.getResolutionLayers",
109
- "operation": "getResolutionLayers",
110
- "objectName": "@happyvertical/smrt-playbooks:PlaybookOverrideCollection",
111
- "path": "/playbookoverrides/getResolutionLayers",
112
- "method": "POST"
113
- },
114
- {
115
- "kind": "cli",
116
- "name": "playbookoverridecollection_getAppOverride",
117
- "operation": "getAppOverride",
118
- "objectName": "@happyvertical/smrt-playbooks:PlaybookOverrideCollection"
119
- },
120
- {
121
- "kind": "cli",
122
- "name": "playbookoverridecollection_getTenantOverride",
123
- "operation": "getTenantOverride",
124
- "objectName": "@happyvertical/smrt-playbooks:PlaybookOverrideCollection"
125
- },
126
- {
127
- "kind": "cli",
128
- "name": "playbookoverridecollection_getResolutionLayers",
129
- "operation": "getResolutionLayers",
130
- "objectName": "@happyvertical/smrt-playbooks:PlaybookOverrideCollection"
131
- },
132
- {
133
- "kind": "mcp",
134
- "name": "playbookoverridecollection_getappoverride",
135
- "operation": "getAppOverride",
136
- "objectName": "@happyvertical/smrt-playbooks:PlaybookOverrideCollection"
137
- },
138
- {
139
- "kind": "mcp",
140
- "name": "playbookoverridecollection_gettenantoverride",
141
- "operation": "getTenantOverride",
142
- "objectName": "@happyvertical/smrt-playbooks:PlaybookOverrideCollection"
143
- },
144
- {
145
- "kind": "mcp",
146
- "name": "playbookoverridecollection_getresolutionlayers",
147
- "operation": "getResolutionLayers",
148
- "objectName": "@happyvertical/smrt-playbooks:PlaybookOverrideCollection"
149
- }
150
- ],
151
- "relationshipFeatures": [
152
- "uuidColumns"
153
- ],
154
- "tags": [],
155
- "risks": []
156
- },
157
44
  {
158
45
  "name": "PlaybookOverride",
159
46
  "qualifiedName": "@happyvertical/smrt-playbooks:PlaybookOverride",
@@ -341,69 +228,122 @@
341
228
  ],
342
229
  "tags": [],
343
230
  "risks": []
231
+ },
232
+ {
233
+ "name": "PlaybookOverrideCollection",
234
+ "qualifiedName": "@happyvertical/smrt-playbooks:PlaybookOverrideCollection",
235
+ "collection": "playbookoverrides",
236
+ "tableName": "_smrt_playbook_overrides",
237
+ "packageName": "@happyvertical/smrt-playbooks",
238
+ "extends": "SmrtCollection",
239
+ "fields": [],
240
+ "relationships": [],
241
+ "methods": [
242
+ "getAppOverride",
243
+ "getResolutionLayers",
244
+ "getTenantOverride"
245
+ ],
246
+ "methodSignatures": [
247
+ {
248
+ "name": "getAppOverride",
249
+ "async": true,
250
+ "params": [
251
+ "key: string",
252
+ "options?: object"
253
+ ],
254
+ "returns": "Promise<PlaybookOverride | null>"
255
+ },
256
+ {
257
+ "name": "getResolutionLayers",
258
+ "async": true,
259
+ "params": [
260
+ "key: string",
261
+ "tenantId?: string | null",
262
+ "options?: object"
263
+ ],
264
+ "returns": "Promise<object>"
265
+ },
266
+ {
267
+ "name": "getTenantOverride",
268
+ "async": true,
269
+ "params": [
270
+ "key: string",
271
+ "tenantId: string",
272
+ "options?: object"
273
+ ],
274
+ "returns": "Promise<PlaybookOverride | null>"
275
+ }
276
+ ],
277
+ "surfaces": [
278
+ {
279
+ "kind": "api",
280
+ "name": "playbookoverrides.getAppOverride",
281
+ "operation": "getAppOverride",
282
+ "objectName": "@happyvertical/smrt-playbooks:PlaybookOverrideCollection",
283
+ "path": "/playbookoverrides/getAppOverride",
284
+ "method": "POST"
285
+ },
286
+ {
287
+ "kind": "api",
288
+ "name": "playbookoverrides.getTenantOverride",
289
+ "operation": "getTenantOverride",
290
+ "objectName": "@happyvertical/smrt-playbooks:PlaybookOverrideCollection",
291
+ "path": "/playbookoverrides/getTenantOverride",
292
+ "method": "POST"
293
+ },
294
+ {
295
+ "kind": "api",
296
+ "name": "playbookoverrides.getResolutionLayers",
297
+ "operation": "getResolutionLayers",
298
+ "objectName": "@happyvertical/smrt-playbooks:PlaybookOverrideCollection",
299
+ "path": "/playbookoverrides/getResolutionLayers",
300
+ "method": "POST"
301
+ },
302
+ {
303
+ "kind": "cli",
304
+ "name": "playbookoverridecollection_getAppOverride",
305
+ "operation": "getAppOverride",
306
+ "objectName": "@happyvertical/smrt-playbooks:PlaybookOverrideCollection"
307
+ },
308
+ {
309
+ "kind": "cli",
310
+ "name": "playbookoverridecollection_getTenantOverride",
311
+ "operation": "getTenantOverride",
312
+ "objectName": "@happyvertical/smrt-playbooks:PlaybookOverrideCollection"
313
+ },
314
+ {
315
+ "kind": "cli",
316
+ "name": "playbookoverridecollection_getResolutionLayers",
317
+ "operation": "getResolutionLayers",
318
+ "objectName": "@happyvertical/smrt-playbooks:PlaybookOverrideCollection"
319
+ },
320
+ {
321
+ "kind": "mcp",
322
+ "name": "playbookoverridecollection_getappoverride",
323
+ "operation": "getAppOverride",
324
+ "objectName": "@happyvertical/smrt-playbooks:PlaybookOverrideCollection"
325
+ },
326
+ {
327
+ "kind": "mcp",
328
+ "name": "playbookoverridecollection_gettenantoverride",
329
+ "operation": "getTenantOverride",
330
+ "objectName": "@happyvertical/smrt-playbooks:PlaybookOverrideCollection"
331
+ },
332
+ {
333
+ "kind": "mcp",
334
+ "name": "playbookoverridecollection_getresolutionlayers",
335
+ "operation": "getResolutionLayers",
336
+ "objectName": "@happyvertical/smrt-playbooks:PlaybookOverrideCollection"
337
+ }
338
+ ],
339
+ "relationshipFeatures": [
340
+ "uuidColumns"
341
+ ],
342
+ "tags": [],
343
+ "risks": []
344
344
  }
345
345
  ],
346
346
  "surfaces": [
347
- {
348
- "kind": "api",
349
- "name": "playbookoverrides.getAppOverride",
350
- "operation": "getAppOverride",
351
- "objectName": "@happyvertical/smrt-playbooks:PlaybookOverrideCollection",
352
- "path": "/playbookoverrides/getAppOverride",
353
- "method": "POST"
354
- },
355
- {
356
- "kind": "api",
357
- "name": "playbookoverrides.getTenantOverride",
358
- "operation": "getTenantOverride",
359
- "objectName": "@happyvertical/smrt-playbooks:PlaybookOverrideCollection",
360
- "path": "/playbookoverrides/getTenantOverride",
361
- "method": "POST"
362
- },
363
- {
364
- "kind": "api",
365
- "name": "playbookoverrides.getResolutionLayers",
366
- "operation": "getResolutionLayers",
367
- "objectName": "@happyvertical/smrt-playbooks:PlaybookOverrideCollection",
368
- "path": "/playbookoverrides/getResolutionLayers",
369
- "method": "POST"
370
- },
371
- {
372
- "kind": "cli",
373
- "name": "playbookoverridecollection_getAppOverride",
374
- "operation": "getAppOverride",
375
- "objectName": "@happyvertical/smrt-playbooks:PlaybookOverrideCollection"
376
- },
377
- {
378
- "kind": "cli",
379
- "name": "playbookoverridecollection_getTenantOverride",
380
- "operation": "getTenantOverride",
381
- "objectName": "@happyvertical/smrt-playbooks:PlaybookOverrideCollection"
382
- },
383
- {
384
- "kind": "cli",
385
- "name": "playbookoverridecollection_getResolutionLayers",
386
- "operation": "getResolutionLayers",
387
- "objectName": "@happyvertical/smrt-playbooks:PlaybookOverrideCollection"
388
- },
389
- {
390
- "kind": "mcp",
391
- "name": "playbookoverridecollection_getappoverride",
392
- "operation": "getAppOverride",
393
- "objectName": "@happyvertical/smrt-playbooks:PlaybookOverrideCollection"
394
- },
395
- {
396
- "kind": "mcp",
397
- "name": "playbookoverridecollection_gettenantoverride",
398
- "operation": "getTenantOverride",
399
- "objectName": "@happyvertical/smrt-playbooks:PlaybookOverrideCollection"
400
- },
401
- {
402
- "kind": "mcp",
403
- "name": "playbookoverridecollection_getresolutionlayers",
404
- "operation": "getResolutionLayers",
405
- "objectName": "@happyvertical/smrt-playbooks:PlaybookOverrideCollection"
406
- },
407
347
  {
408
348
  "kind": "api",
409
349
  "name": "playbookoverrides.list",
@@ -473,6 +413,66 @@
473
413
  "name": "playbookoverride_delete",
474
414
  "operation": "delete",
475
415
  "objectName": "@happyvertical/smrt-playbooks:PlaybookOverride"
416
+ },
417
+ {
418
+ "kind": "api",
419
+ "name": "playbookoverrides.getAppOverride",
420
+ "operation": "getAppOverride",
421
+ "objectName": "@happyvertical/smrt-playbooks:PlaybookOverrideCollection",
422
+ "path": "/playbookoverrides/getAppOverride",
423
+ "method": "POST"
424
+ },
425
+ {
426
+ "kind": "api",
427
+ "name": "playbookoverrides.getTenantOverride",
428
+ "operation": "getTenantOverride",
429
+ "objectName": "@happyvertical/smrt-playbooks:PlaybookOverrideCollection",
430
+ "path": "/playbookoverrides/getTenantOverride",
431
+ "method": "POST"
432
+ },
433
+ {
434
+ "kind": "api",
435
+ "name": "playbookoverrides.getResolutionLayers",
436
+ "operation": "getResolutionLayers",
437
+ "objectName": "@happyvertical/smrt-playbooks:PlaybookOverrideCollection",
438
+ "path": "/playbookoverrides/getResolutionLayers",
439
+ "method": "POST"
440
+ },
441
+ {
442
+ "kind": "cli",
443
+ "name": "playbookoverridecollection_getAppOverride",
444
+ "operation": "getAppOverride",
445
+ "objectName": "@happyvertical/smrt-playbooks:PlaybookOverrideCollection"
446
+ },
447
+ {
448
+ "kind": "cli",
449
+ "name": "playbookoverridecollection_getTenantOverride",
450
+ "operation": "getTenantOverride",
451
+ "objectName": "@happyvertical/smrt-playbooks:PlaybookOverrideCollection"
452
+ },
453
+ {
454
+ "kind": "cli",
455
+ "name": "playbookoverridecollection_getResolutionLayers",
456
+ "operation": "getResolutionLayers",
457
+ "objectName": "@happyvertical/smrt-playbooks:PlaybookOverrideCollection"
458
+ },
459
+ {
460
+ "kind": "mcp",
461
+ "name": "playbookoverridecollection_getappoverride",
462
+ "operation": "getAppOverride",
463
+ "objectName": "@happyvertical/smrt-playbooks:PlaybookOverrideCollection"
464
+ },
465
+ {
466
+ "kind": "mcp",
467
+ "name": "playbookoverridecollection_gettenantoverride",
468
+ "operation": "getTenantOverride",
469
+ "objectName": "@happyvertical/smrt-playbooks:PlaybookOverrideCollection"
470
+ },
471
+ {
472
+ "kind": "mcp",
473
+ "name": "playbookoverridecollection_getresolutionlayers",
474
+ "operation": "getResolutionLayers",
475
+ "objectName": "@happyvertical/smrt-playbooks:PlaybookOverrideCollection"
476
476
  }
477
477
  ],
478
478
  "prompts": [],
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@happyvertical/smrt-playbooks",
3
- "version": "0.45.2",
3
+ "version": "0.46.0",
4
4
  "description": "Layered playbook registry, app/tenant overrides, and plan resolution for SMRT agents",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -20,17 +20,17 @@
20
20
  },
21
21
  "dependencies": {
22
22
  "@happyvertical/sql": "^0.89.4",
23
- "@happyvertical/smrt-config": "0.45.2",
24
- "@happyvertical/smrt-tenancy": "0.45.2",
25
- "@happyvertical/smrt-core": "0.45.2",
26
- "@happyvertical/smrt-types": "0.45.2"
23
+ "@happyvertical/smrt-config": "0.46.0",
24
+ "@happyvertical/smrt-types": "0.46.0",
25
+ "@happyvertical/smrt-core": "0.46.0",
26
+ "@happyvertical/smrt-tenancy": "0.46.0"
27
27
  },
28
28
  "devDependencies": {
29
29
  "@types/node": "24.13.2",
30
30
  "typescript": "5.9.3",
31
31
  "vite": "8.1.4",
32
32
  "vitest": "4.1.10",
33
- "@happyvertical/smrt-vitest": "0.45.2"
33
+ "@happyvertical/smrt-vitest": "0.46.0"
34
34
  },
35
35
  "keywords": [
36
36
  "smrt",