@oktis-works/plugin-runtime 0.7.0 → 0.7.2

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.
@@ -5,7 +5,7 @@
5
5
  // object with typed methods; the runtime only knows the interface (avoids a
6
6
  // dependency cycle).
7
7
  import { randomUUID } from 'node:crypto';
8
- import { PERMISSIONS, createPluginAdminApi } from '@oktis-works/plugin-sdk';
8
+ import { ALL_PERMISSIONS, PERMISSIONS, createPluginAdminApi } from '@oktis-works/plugin-sdk';
9
9
  import { createHttpApi } from './http.js';
10
10
  import { i18nFallbackChain, i18nInterpolate } from './i18n.js';
11
11
  import { ContentQueryBuilder } from './content-query.js';
@@ -40,8 +40,23 @@ function createMemoryCacheBackend() {
40
40
  },
41
41
  };
42
42
  }
43
+ /** Normalizes and validates a plugin route before it enters the registry. */
44
+ export function normalizePluginRoutePath(value) {
45
+ if (typeof value !== 'string' || !value.startsWith('/') || value.includes('..') || value.includes('://') || value.includes('\\') || value.includes('?') || value.includes('#')) {
46
+ throw new Error(`Invalid plugin route path: ${value}`);
47
+ }
48
+ const segments = value.split('/').filter(Boolean);
49
+ if (segments.some((segment) => segment === '.' || segment === '..')) {
50
+ throw new Error(`Invalid plugin route path: ${value}`);
51
+ }
52
+ return `/${segments.join('/')}`;
53
+ }
43
54
  export function createPluginApi(deps) {
44
- const { hooks, manifest, settings, eventBus, db, getTenantId, getUserId, getTenantById, getUserById, allowedPermissions, registerFieldTypes, registerPostTypes, registerTaxonomies } = deps;
55
+ const { hooks, manifest, settings, eventBus, db, getTenantId, getUserId, getTenantById, getUserById, allowedPermissions: configuredPermissions } = deps;
56
+ // The bootstrap always supplies an explicit effective policy. The fallback
57
+ // keeps the public factory compatible with older integrations that created
58
+ // an API directly without a policy object; it is never used by bootstrap.
59
+ const allowedPermissions = configuredPermissions ?? [...ALL_PERMISSIONS];
45
60
  // Validates the permission before running a query
46
61
  function checkDbPermission() {
47
62
  if (!allowedPermissions.includes('db:query')) {
@@ -58,7 +73,7 @@ export function createPluginApi(deps) {
58
73
  const registeredPatterns = [];
59
74
  // ── api.admin (FEAT-098/DECI-027): declarative slots registered at
60
75
  // runtime; the /api/v1/plugins/extensions endpoint merges with manifest.admin.
61
- const adminApi = createPluginAdminApi(manifest.name);
76
+ const adminApi = createPluginAdminApi(manifest.name, undefined, () => allowedPermissions.includes(PERMISSIONS.ADMIN_UI));
62
77
  /** CPT/taxonomy slugs: lowercase, digits, underscore and hyphen (WP style). */
63
78
  const SLUG_PATTERN = /^[a-z][a-z0-9_-]*$/;
64
79
  /** Reserved slugs no plugin can claim. */
@@ -88,13 +103,14 @@ export function createPluginApi(deps) {
88
103
  const MUTATION_PATTERN = /^\s*(INSERT|UPDATE|DELETE|CREATE|ALTER|DROP|TRUNCATE|GRANT|REVOKE)\b/i;
89
104
  function auditPlugin(action, resourceType, changes) {
90
105
  try {
91
- void deps.audit?.record({
106
+ const result = deps.audit?.record({
92
107
  tenantId: getTenantId(),
93
108
  action,
94
109
  resourceType,
95
110
  resourceId: manifest.name,
96
111
  changes: { plugin: manifest.name, ...changes },
97
112
  });
113
+ void result?.catch(() => undefined);
98
114
  }
99
115
  catch {
100
116
  // auditing never blocks the operation
@@ -108,14 +124,17 @@ export function createPluginApi(deps) {
108
124
  async set(key, value, options) {
109
125
  requirePermission(PERMISSIONS.CACHE_WRITE);
110
126
  const fullKey = cacheKeyFor(key);
127
+ const tags = options?.tags ?? [];
128
+ for (const tag of tags) {
129
+ if (typeof tag !== 'string' || tag.trim().length === 0 || tag.length > 100) {
130
+ throw new Error('cache tag must be a non-empty string of at most 100 characters');
131
+ }
132
+ }
111
133
  const ttl = options?.ttlSeconds;
112
134
  await cacheBackend.set(fullKey, value, ttl);
113
135
  // Tag → keys index (TTL tracking the value; the index expires with it
114
136
  // and orphan keys expire through their own value TTL).
115
- for (const tag of options?.tags ?? []) {
116
- if (typeof tag !== 'string' || tag.trim().length === 0) {
117
- throw new Error('cache tag must be a non-empty string');
118
- }
137
+ for (const tag of tags) {
119
138
  const indexKey = tagIndexKeyFor(tag);
120
139
  const indexed = (await cacheBackend.get(indexKey)) ?? [];
121
140
  if (!indexed.includes(fullKey))
@@ -176,16 +195,17 @@ export function createPluginApi(deps) {
176
195
  throw new Error(`schedule("${jobName}") requires exactly one of: every | cron`);
177
196
  }
178
197
  // Per-plugin ceiling — only new schedules count (re-scheduling the same name is free)
179
- if (!scheduledJobNames.has(jobName)) {
198
+ const isNewSchedule = !scheduledJobNames.has(jobName);
199
+ if (isNewSchedule) {
180
200
  if (scheduledJobNames.size >= MAX_SCHEDULED_JOBS) {
181
201
  throw new Error(`Job schedule limit reached (${MAX_SCHEDULED_JOBS} per plugin)`);
182
202
  }
183
- scheduledJobNames.add(jobName);
184
203
  }
185
204
  if (!deps.jobs)
186
205
  return false; // queue unavailable: degradation, never throws
187
206
  const scheduled = await deps.jobs.schedule(jobName, hasCron ? { cron: spec.cron } : { every: spec.every }, jobsCtx());
188
207
  if (scheduled) {
208
+ scheduledJobNames.add(jobName);
189
209
  auditPlugin('plugin.jobs.schedule', 'job', { jobName, spec: hasCron ? { cron: spec.cron } : { every: spec.every } });
190
210
  }
191
211
  return scheduled;
@@ -284,18 +304,36 @@ export function createPluginApi(deps) {
284
304
  }
285
305
  return src;
286
306
  }
307
+ function validateIntegrity(integrity, crossOrigin) {
308
+ if (crossOrigin !== undefined && crossOrigin !== 'anonymous' && crossOrigin !== 'use-credentials') {
309
+ throw new Error('Asset crossOrigin must be anonymous or use-credentials');
310
+ }
311
+ if (integrity === undefined || integrity === '')
312
+ return undefined;
313
+ if (typeof integrity !== 'string' || !/^(?:sha256|sha384|sha512)-[A-Za-z0-9+/]+={0,2}(?:\s+(?:sha256|sha384|sha512)-[A-Za-z0-9+/]+={0,2})*$/.test(integrity)) {
314
+ throw new Error('Asset integrity must contain valid sha256/sha384/sha512 SRI tokens');
315
+ }
316
+ return integrity;
317
+ }
318
+ function validateAssetSRI(src, integrity, crossOrigin) {
319
+ if (integrity && /^https?:\/\//i.test(src) && crossOrigin !== 'anonymous' && crossOrigin !== 'use-credentials') {
320
+ throw new Error('Cross-origin assets with integrity require crossOrigin');
321
+ }
322
+ }
287
323
  const assetsApi = {
288
324
  enqueueStyle(style) {
289
325
  requirePermission(PERMISSIONS.ASSETS_ENQUEUE);
290
326
  const src = validateAssetSrc(style?.src);
291
327
  if (registeredAssets.some((asset) => asset.src === src))
292
328
  return;
329
+ const integrity = validateIntegrity(style?.integrity, style?.crossOrigin);
330
+ validateAssetSRI(src, integrity, style?.crossOrigin);
293
331
  const entry = {
294
332
  kind: 'style',
295
333
  src,
296
334
  version: typeof style?.version === 'string' && style.version ? style.version : undefined,
297
335
  media: typeof style?.media === 'string' && style.media ? style.media : undefined,
298
- integrity: typeof style?.integrity === 'string' && style.integrity ? style.integrity : undefined,
336
+ integrity,
299
337
  crossOrigin: typeof style?.crossOrigin === 'string' && style.crossOrigin ? style.crossOrigin : undefined,
300
338
  pluginName: manifest.name,
301
339
  };
@@ -306,6 +344,8 @@ export function createPluginApi(deps) {
306
344
  const src = validateAssetSrc(script?.src);
307
345
  if (registeredAssets.some((asset) => asset.src === src))
308
346
  return;
347
+ const integrity = validateIntegrity(script?.integrity, script?.crossOrigin);
348
+ validateAssetSRI(src, integrity, script?.crossOrigin);
309
349
  const strategy = script?.strategy === 'defer' || script?.strategy === 'async' ? script.strategy : 'blocking';
310
350
  const entry = {
311
351
  kind: 'script',
@@ -313,7 +353,7 @@ export function createPluginApi(deps) {
313
353
  version: typeof script?.version === 'string' && script.version ? script.version : undefined,
314
354
  strategy,
315
355
  placement: script?.placement === 'footer' ? 'footer' : 'head',
316
- integrity: typeof script?.integrity === 'string' && script.integrity ? script.integrity : undefined,
356
+ integrity,
317
357
  crossOrigin: typeof script?.crossOrigin === 'string' && script.crossOrigin ? script.crossOrigin : undefined,
318
358
  pluginName: manifest.name,
319
359
  };
@@ -514,6 +554,8 @@ export function createPluginApi(deps) {
514
554
  }, { sourceId: manifest.name, sourceType: 'plugin' });
515
555
  },
516
556
  addRoute(route) {
557
+ requirePermission(PERMISSIONS.ROUTES_REGISTER);
558
+ const normalizedPath = normalizePluginRoutePath(route.path);
517
559
  if (route.requiredPermissions) {
518
560
  for (const perm of route.requiredPermissions) {
519
561
  if (!allowedPermissions.includes(perm)) {
@@ -521,13 +563,35 @@ export function createPluginApi(deps) {
521
563
  }
522
564
  }
523
565
  }
524
- registeredRoutes.push(route);
566
+ if (registeredRoutes.some((registered) => registered.method === route.method && registered.path === normalizedPath)) {
567
+ throw new Error(`Plugin route already registered: ${route.method} ${normalizedPath}`);
568
+ }
569
+ registeredRoutes.push({ ...route, path: normalizedPath });
525
570
  auditPlugin('plugin.route.register', 'route', {
526
571
  method: route.method,
527
572
  path: route.path,
528
573
  });
529
574
  },
575
+ registerRoutes(routes) {
576
+ if (!Array.isArray(routes))
577
+ throw new Error('registerRoutes expects an array');
578
+ for (const route of routes)
579
+ api.addRoute(route);
580
+ },
530
581
  addContentField(field) {
582
+ requirePermission(PERMISSIONS.FIELD_TYPES_REGISTER);
583
+ if (!field || typeof field.name !== 'string' || !/^[a-z][a-z0-9_-]*$/i.test(field.name)) {
584
+ throw new Error('Content field name must contain only letters, numbers, underscores, and hyphens');
585
+ }
586
+ if (typeof field.type !== 'string' || field.type.trim().length === 0) {
587
+ throw new Error('Content field type is required');
588
+ }
589
+ if (typeof field.label !== 'string' || field.label.trim().length === 0) {
590
+ throw new Error('Content field label is required');
591
+ }
592
+ if (registeredFields.some((registered) => registered.name === field.name)) {
593
+ throw new Error(`Content field "${field.name}" already registered`);
594
+ }
531
595
  registeredFields.push(field);
532
596
  },
533
597
  addFieldType(definition) {
@@ -545,7 +609,6 @@ export function createPluginApi(deps) {
545
609
  isPluginType: true,
546
610
  };
547
611
  registeredFieldTypes.push(withPluginName);
548
- registerFieldTypes(registeredFieldTypes);
549
612
  },
550
613
  addPostType(declaration) {
551
614
  if (!allowedPermissions.includes(PERMISSIONS.POST_TYPES_REGISTER)) {
@@ -566,7 +629,6 @@ export function createPluginApi(deps) {
566
629
  }
567
630
  const withPluginName = { ...declaration, pluginName: manifest.name };
568
631
  registeredPostTypes.push(withPluginName);
569
- registerPostTypes?.([...registeredPostTypes]);
570
632
  },
571
633
  addTaxonomy(declaration) {
572
634
  if (!allowedPermissions.includes(PERMISSIONS.TAXONOMIES_REGISTER)) {
@@ -590,7 +652,6 @@ export function createPluginApi(deps) {
590
652
  }
591
653
  const withPluginName = { ...declaration, pluginName: manifest.name };
592
654
  registeredTaxonomies.push(withPluginName);
593
- registerTaxonomies?.([...registeredTaxonomies]);
594
655
  },
595
656
  registerBlock(block) {
596
657
  if (!allowedPermissions.includes(PERMISSIONS.BLOCKS_REGISTER)) {
@@ -605,6 +666,9 @@ export function createPluginApi(deps) {
605
666
  if (!block.adminComponentPath || typeof block.adminComponentPath !== 'string') {
606
667
  throw new Error('Block "adminComponentPath" is required');
607
668
  }
669
+ if (block.type.includes('/') && block.type.split('/')[0] !== manifest.name) {
670
+ throw new Error(`Block type "${block.type}" is owned by another plugin`);
671
+ }
608
672
  const existing = registeredBlocks.find((registered) => registered.type === block.type);
609
673
  if (existing) {
610
674
  throw new Error(`Block type "${block.type}" already registered by plugin "${existing.pluginName || 'unknown'}"`);
@@ -624,6 +688,9 @@ export function createPluginApi(deps) {
624
688
  if (!pattern.content || typeof pattern.content !== 'string') {
625
689
  throw new Error('Pattern "content" is required');
626
690
  }
691
+ if (pattern.name.includes('/') && pattern.name.split('/')[0] !== manifest.name) {
692
+ throw new Error(`Pattern name "${pattern.name}" is owned by another plugin`);
693
+ }
627
694
  const existing = registeredPatterns.find((registered) => registered.name === pattern.name);
628
695
  if (existing) {
629
696
  throw new Error(`Pattern name "${pattern.name}" already registered by plugin "${existing.pluginName || 'unknown'}"`);
@@ -720,6 +787,7 @@ export function createPluginApi(deps) {
720
787
  api,
721
788
  internal: {
722
789
  getRoutes: () => registeredRoutes,
790
+ getApi: () => api,
723
791
  getFields: () => registeredFields,
724
792
  getFieldTypes: () => registeredFieldTypes,
725
793
  getPostTypes: () => registeredPostTypes,
@@ -730,6 +798,38 @@ export function createPluginApi(deps) {
730
798
  getPatterns: () => registeredPatterns,
731
799
  getEnqueuedAssets: () => registeredAssets,
732
800
  getHealthChecks: () => [...healthChecks.entries()].map(([name, check]) => ({ name, check })),
801
+ cleanup: async () => {
802
+ if (deps.jobs) {
803
+ for (const jobName of scheduledJobNames) {
804
+ await deps.jobs.cancel(jobName, jobsCtx()).catch(() => undefined);
805
+ }
806
+ }
807
+ scheduledJobNames.clear();
808
+ },
809
+ reset: () => {
810
+ registeredRoutes.length = 0;
811
+ registeredFields.length = 0;
812
+ registeredFieldTypes.length = 0;
813
+ registeredPostTypes.length = 0;
814
+ registeredTaxonomies.length = 0;
815
+ registeredBlocks.length = 0;
816
+ registeredPatterns.length = 0;
817
+ registeredAssets.length = 0;
818
+ jobHandlers.clear();
819
+ scheduledJobNames.clear();
820
+ healthChecks.clear();
821
+ i18nBundles.clear();
822
+ mailTemplates.clear();
823
+ adminApi.state.menuPages = [];
824
+ adminApi.state.submenuPages = [];
825
+ adminApi.state.dashboardWidgets = [];
826
+ adminApi.state.metaBoxes = [];
827
+ adminApi.state.notices = [];
828
+ adminApi.state.columns = {};
829
+ adminApi.state.columnRenderers = {};
830
+ adminApi.state.actionLinks = [];
831
+ adminApi.state.editors = [];
832
+ },
733
833
  },
734
834
  };
735
835
  }
@@ -1 +1 @@
1
- {"version":3,"file":"plugin-api.js","sourceRoot":"","sources":["../src/plugin-api.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"plugin-api.js","sourceRoot":"","sources":["../src/plugin-api.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@oktis-works/plugin-runtime",
3
- "version": "0.7.0",
3
+ "version": "0.7.2",
4
4
  "private": false,
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -16,9 +16,9 @@
16
16
  "clean": "rm -rf dist tsconfig.tsbuildinfo"
17
17
  },
18
18
  "dependencies": {
19
- "@oktis-works/plugin-sdk": "^0.7.0",
20
- "@oktis-works/types": "^0.9.0",
21
- "@oktis-works/validation": "^0.7.0",
19
+ "@oktis-works/plugin-sdk": "^0.7.2",
20
+ "@oktis-works/types": "^0.9.3",
21
+ "@oktis-works/validation": "^0.8.0",
22
22
  "semver": "7",
23
23
  "undici": "^8.11.2"
24
24
  },