@portel/photon-core 2.22.0 → 2.23.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (45) hide show
  1. package/dist/base.d.ts +19 -0
  2. package/dist/base.d.ts.map +1 -1
  3. package/dist/base.js +29 -0
  4. package/dist/base.js.map +1 -1
  5. package/dist/bases-registry.d.ts +57 -0
  6. package/dist/bases-registry.d.ts.map +1 -0
  7. package/dist/bases-registry.js +127 -0
  8. package/dist/bases-registry.js.map +1 -0
  9. package/dist/data-paths.d.ts +31 -18
  10. package/dist/data-paths.d.ts.map +1 -1
  11. package/dist/data-paths.js +42 -43
  12. package/dist/data-paths.js.map +1 -1
  13. package/dist/index.d.ts +3 -2
  14. package/dist/index.d.ts.map +1 -1
  15. package/dist/index.js +6 -2
  16. package/dist/index.js.map +1 -1
  17. package/dist/memory.d.ts.map +1 -1
  18. package/dist/memory.js +81 -1
  19. package/dist/memory.js.map +1 -1
  20. package/dist/path-resolver.d.ts +13 -1
  21. package/dist/path-resolver.d.ts.map +1 -1
  22. package/dist/path-resolver.js +23 -1
  23. package/dist/path-resolver.js.map +1 -1
  24. package/dist/photon-loader-lite.d.ts +17 -2
  25. package/dist/photon-loader-lite.d.ts.map +1 -1
  26. package/dist/photon-loader-lite.js +162 -26
  27. package/dist/photon-loader-lite.js.map +1 -1
  28. package/dist/schema-extractor.d.ts +7 -2
  29. package/dist/schema-extractor.d.ts.map +1 -1
  30. package/dist/schema-extractor.js +21 -3
  31. package/dist/schema-extractor.js.map +1 -1
  32. package/dist/stateful.d.ts +3 -2
  33. package/dist/stateful.d.ts.map +1 -1
  34. package/dist/stateful.js +18 -6
  35. package/dist/stateful.js.map +1 -1
  36. package/package.json +1 -1
  37. package/src/base.ts +43 -0
  38. package/src/bases-registry.ts +141 -0
  39. package/src/data-paths.ts +43 -49
  40. package/src/index.ts +14 -1
  41. package/src/memory.ts +81 -0
  42. package/src/path-resolver.ts +26 -1
  43. package/src/photon-loader-lite.ts +176 -33
  44. package/src/schema-extractor.ts +24 -3
  45. package/src/stateful.ts +19 -6
@@ -17,7 +17,9 @@
17
17
  * ```
18
18
  */
19
19
  import * as fs from 'fs/promises';
20
+ import * as fsSync from 'fs';
20
21
  import * as path from 'path';
22
+ import * as os from 'os';
21
23
  import { pathToFileURL } from 'url';
22
24
  import { compilePhotonTS } from './compiler.js';
23
25
  import { findPhotonClass } from './class-detection.js';
@@ -80,10 +82,75 @@ export async function photon(filePath, options = {}) {
80
82
  }
81
83
  }
82
84
  /**
83
- * Clear the photon instance cache. Useful for testing.
85
+ * Clear the photon instance cache. Fires onShutdown on each cached
86
+ * instance first so resources held across loads get a chance to drain.
84
87
  */
85
- export function clearPhotonCache() {
88
+ export async function clearPhotonCache() {
89
+ await disposeAllPhotons('clear-cache');
90
+ }
91
+ /**
92
+ * Dispose one cached photon instance (by absolute path + optional instance
93
+ * name). Invokes onShutdown with the given reason before evicting the
94
+ * cache entry. Errors from onShutdown are logged and swallowed.
95
+ */
96
+ export async function disposePhoton(filePath, opts = {}) {
97
+ const absolutePath = path.isAbsolute(filePath)
98
+ ? filePath
99
+ : path.resolve(process.cwd(), filePath);
100
+ const cacheKey = opts.instanceName ? `${absolutePath}::${opts.instanceName}` : absolutePath;
101
+ const proxy = instanceCache.get(cacheKey);
102
+ if (!proxy)
103
+ return false;
104
+ await invokeShutdownQuietly(proxy, opts.reason || 'dispose');
105
+ instanceCache.delete(cacheKey);
106
+ return true;
107
+ }
108
+ /**
109
+ * Dispose every cached photon instance and clear the cache. Fires
110
+ * onShutdown on each with the given reason.
111
+ */
112
+ export async function disposeAllPhotons(reason = 'dispose') {
113
+ const proxies = Array.from(instanceCache.values());
86
114
  instanceCache.clear();
115
+ await Promise.all(proxies.map((p) => invokeShutdownQuietly(p, reason)));
116
+ }
117
+ /** Fire onShutdown with a bounded timeout; never propagates errors. */
118
+ async function invokeShutdownQuietly(proxy, reason) {
119
+ try {
120
+ const hook = proxy?.onShutdown;
121
+ if (typeof hook !== 'function')
122
+ return;
123
+ const TIMEOUT_MS = 10_000;
124
+ let timer;
125
+ try {
126
+ await Promise.race([
127
+ Promise.resolve(hook.call(proxy, { reason })),
128
+ new Promise((_, reject) => {
129
+ timer = setTimeout(() => reject(new Error(`onShutdown hook exceeded ${TIMEOUT_MS}ms`)), TIMEOUT_MS);
130
+ }),
131
+ ]);
132
+ }
133
+ finally {
134
+ if (timer)
135
+ clearTimeout(timer);
136
+ }
137
+ }
138
+ catch (err) {
139
+ // eslint-disable-next-line no-console
140
+ console.error(`[photon] onShutdown failed during ${reason}: ${err?.message ?? err}`);
141
+ }
142
+ }
143
+ /** Register a single beforeExit handler that drains cached instances. */
144
+ let exitHookRegistered = false;
145
+ function registerExitHook() {
146
+ if (exitHookRegistered)
147
+ return;
148
+ exitHookRegistered = true;
149
+ process.on('beforeExit', () => {
150
+ // Fire and forget — beforeExit allows async work, but we don't
151
+ // block process exit if a photon's onShutdown misbehaves.
152
+ void disposeAllPhotons('process-exit');
153
+ });
87
154
  }
88
155
  // ═══════════════════════════════════════════════════════════════════
89
156
  // Internal pipeline
@@ -116,9 +183,12 @@ async function loadPhotonInternal(absolutePath, cacheKey, options) {
116
183
  const EnhancedClass = withPhotonCapabilities(PhotonClass);
117
184
  // 9. Instantiate
118
185
  const instance = new EnhancedClass(...constructorArgs);
119
- // 10. Set photon identity
186
+ // 10. Set photon identity. Namespace mirrors the file's position under
187
+ // baseDir (same rule the classic loader applies). Falls back to 'local'
188
+ // when no baseDir context is available. See
189
+ // docs/internals/PHOTON-DIR-AND-NAMESPACE.md §3.
120
190
  instance._photonName = photonName;
121
- instance._photonNamespace = options.namespace || 'local';
191
+ instance._photonNamespace = options.namespace ?? deriveNamespace(absolutePath, options.baseDir);
122
192
  if (options.instanceName) {
123
193
  instance.instanceName = options.instanceName;
124
194
  }
@@ -135,7 +205,7 @@ async function loadPhotonInternal(absolutePath, cacheKey, options) {
135
205
  }
136
206
  // 14. Inject cross-photon call handler (in-process resolution)
137
207
  instance._callHandler = async (targetPhotonName, method, params) => {
138
- const targetPath = resolvePhotonPath(targetPhotonName, absolutePath);
208
+ const targetPath = resolvePhotonPath(targetPhotonName, absolutePath, options.baseDir);
139
209
  const target = await photon(targetPath, {
140
210
  baseDir: options.baseDir,
141
211
  mcpFactory: options.mcpFactory,
@@ -147,8 +217,11 @@ async function loadPhotonInternal(absolutePath, cacheKey, options) {
147
217
  if (typeof instance.onInitialize === 'function') {
148
218
  await instance.onInitialize();
149
219
  }
150
- // 16. Build middleware proxy
220
+ // 16. Build middleware proxy (wraps dispatch with onError observability)
151
221
  const proxy = buildMiddlewareProxy(instance, photonName, toolSchemas, options);
222
+ // 17. Register for shutdown on process exit so onShutdown fires for
223
+ // lite-loaded photons the caller never explicitly disposed.
224
+ registerExitHook();
152
225
  return proxy;
153
226
  }
154
227
  finally {
@@ -156,6 +229,23 @@ async function loadPhotonInternal(absolutePath, cacheKey, options) {
156
229
  }
157
230
  }
158
231
  // ═══════════════════════════════════════════════════════════════════
232
+ // Namespace derivation (mirrors classic loader's resolveNamespace)
233
+ // ═══════════════════════════════════════════════════════════════════
234
+ function deriveNamespace(absolutePath, baseDir) {
235
+ if (!baseDir)
236
+ return 'local';
237
+ const resolvedBase = path.resolve(baseDir);
238
+ const rel = path.relative(resolvedBase, absolutePath);
239
+ // File outside baseDir — fall back to 'local'.
240
+ if (rel.startsWith('..'))
241
+ return 'local';
242
+ const parts = rel.split(path.sep);
243
+ // Flat file at baseDir root — use 'local' (equivalent to '' in getPhotonDataDir).
244
+ if (parts.length < 2)
245
+ return 'local';
246
+ return parts.slice(0, -1).join(path.sep);
247
+ }
248
+ // ═══════════════════════════════════════════════════════════════════
159
249
  // Constructor injection
160
250
  // ═══════════════════════════════════════════════════════════════════
161
251
  async function resolveConstructorArgs(injections, photonName, currentPath, options) {
@@ -167,7 +257,7 @@ async function resolveConstructorArgs(injections, photonName, currentPath, optio
167
257
  case 'photon': {
168
258
  // Recursive photon loading
169
259
  const dep = injection.photonDependency;
170
- const depPath = resolvePhotonDepPath(dep.source, dep.sourceType, currentPath);
260
+ const depPath = resolvePhotonDepPath(dep.source, dep.sourceType, currentPath, options.baseDir);
171
261
  const depInstance = await photon(depPath, {
172
262
  baseDir: options.baseDir,
173
263
  mcpFactory: options.mcpFactory,
@@ -369,12 +459,16 @@ function buildMiddlewareProxy(instance, photonName, toolSchemas, options) {
369
459
  }
370
460
  const schema = toolMap.get(prop);
371
461
  const declarations = schema?.middleware || [];
372
- // No middleware return bound method directly
373
- if (declarations.length === 0) {
462
+ const hasErrorHook = typeof instance.onError === 'function';
463
+ // No middleware AND no onError — preserve the bound-method fast path
464
+ // (keeps sync methods sync for callers that don't need the hook).
465
+ if (declarations.length === 0 && !hasErrorHook) {
374
466
  return value.bind(target);
375
467
  }
376
- // Return a function that applies middleware on each call
377
- return (...args) => {
468
+ // Return a function that runs through the middleware chain (if any)
469
+ // and routes any thrown error through the onError observability hook
470
+ // before re-throwing. Hook cannot suppress or transform the error.
471
+ return async (...args) => {
378
472
  const ctx = {
379
473
  photon: photonName,
380
474
  tool: prop,
@@ -382,12 +476,44 @@ function buildMiddlewareProxy(instance, photonName, toolSchemas, options) {
382
476
  params: args[0] ?? {},
383
477
  };
384
478
  const execute = () => value.apply(target, args);
385
- const chain = buildMiddlewareChain(execute, declarations, registry, stateStores, ctx);
386
- return chain();
479
+ const dispatch = declarations.length === 0
480
+ ? execute
481
+ : buildMiddlewareChain(execute, declarations, registry, stateStores, ctx);
482
+ try {
483
+ return await dispatch();
484
+ }
485
+ catch (err) {
486
+ await invokeErrorHookLite(instance, err, { tool: prop, params: args[0] ?? {} });
487
+ throw err;
488
+ }
387
489
  };
388
490
  },
389
491
  });
390
492
  }
493
+ /** Fire onError with a bounded 5s timeout. Never throws, never suppresses. */
494
+ async function invokeErrorHookLite(instance, error, ctx) {
495
+ const hook = instance.onError;
496
+ if (typeof hook !== 'function')
497
+ return;
498
+ const TIMEOUT_MS = 5_000;
499
+ let timer;
500
+ try {
501
+ await Promise.race([
502
+ Promise.resolve(hook.call(instance, error, ctx)),
503
+ new Promise((_, reject) => {
504
+ timer = setTimeout(() => reject(new Error(`onError hook exceeded ${TIMEOUT_MS}ms`)), TIMEOUT_MS);
505
+ }),
506
+ ]);
507
+ }
508
+ catch (hookErr) {
509
+ // eslint-disable-next-line no-console
510
+ console.error(`onError hook failed for ${ctx.tool}: ${hookErr?.message ?? String(hookErr)}`);
511
+ }
512
+ finally {
513
+ if (timer)
514
+ clearTimeout(timer);
515
+ }
516
+ }
391
517
  // ═══════════════════════════════════════════════════════════════════
392
518
  // Path utilities
393
519
  // ═══════════════════════════════════════════════════════════════════
@@ -402,19 +528,25 @@ function derivePhotonName(filePath) {
402
528
  .replace(/\.(ts|js|mjs)$/, '');
403
529
  }
404
530
  /**
405
- * Resolve a photon dependency source to an absolute path.
531
+ * Resolve a photon dependency source to an absolute path. Marketplace
532
+ * lookups respect the resolved PHOTON_DIR so lite-loaded photons find
533
+ * their dependencies under the same base the caller configured.
406
534
  */
407
- function resolvePhotonDepPath(source, sourceType, currentPhotonPath) {
535
+ function resolvePhotonDepPath(source, sourceType, currentPhotonPath, baseDir) {
408
536
  if (sourceType === 'local') {
409
537
  if (source.startsWith('./') || source.startsWith('../')) {
410
538
  return path.resolve(path.dirname(currentPhotonPath), source);
411
539
  }
412
540
  return source;
413
541
  }
414
- // For marketplace photons, look in ~/.photon/photons/<name>/
542
+ // Marketplace photons live under the resolved PHOTON_DIR (not hardcoded
543
+ // to ~/.photon as before). Canonical layout is `{base}/{source}.photon.ts`
544
+ // for flat installs, `{base}/<ns>/{source}.photon.ts` for namespaced ones.
545
+ // Here we return the flat path; callers that need namespaced resolution
546
+ // should use the classic loader.
415
547
  if (sourceType === 'marketplace') {
416
- const homeDir = process.env.HOME || process.env.USERPROFILE || '';
417
- return path.join(homeDir, '.photon', 'photons', source, `${source}.photon.ts`);
548
+ const base = baseDir || process.env.PHOTON_DIR || path.join(os.homedir(), '.photon');
549
+ return path.join(base, `${source}.photon.ts`);
418
550
  }
419
551
  // npm and github sources — for now, throw a helpful error
420
552
  throw new Error(`Cannot resolve ${sourceType} photon dependency "${source}" in lite loader. ` +
@@ -423,14 +555,18 @@ function resolvePhotonDepPath(source, sourceType, currentPhotonPath) {
423
555
  }
424
556
  /**
425
557
  * Resolve a photon name to a path for cross-photon calls.
426
- * Searches: sibling files, then ~/.photon/photons/
558
+ * Prefers a sibling file next to the caller; falls back to the resolved
559
+ * PHOTON_DIR. Returns the most likely path; the caller reports an
560
+ * actionable error if it doesn't exist.
427
561
  */
428
- function resolvePhotonPath(photonName, callerPath) {
429
- // Try sibling file first
430
- const dir = path.dirname(callerPath);
431
- const siblingPath = path.join(dir, `${photonName}.photon.ts`);
432
- // We can't do sync fs.existsSync in an async context cleanly,
433
- // so just return the sibling path — the load will fail with a clear error if not found
434
- return siblingPath;
562
+ function resolvePhotonPath(photonName, callerPath, baseDir) {
563
+ const siblingPath = path.join(path.dirname(callerPath), `${photonName}.photon.ts`);
564
+ if (fsSync.existsSync(siblingPath))
565
+ return siblingPath;
566
+ const base = baseDir || process.env.PHOTON_DIR || path.join(os.homedir(), '.photon');
567
+ const baseFlat = path.join(base, `${photonName}.photon.ts`);
568
+ if (fsSync.existsSync(baseFlat))
569
+ return baseFlat;
570
+ return siblingPath; // load will fail with a clear error if missing
435
571
  }
436
572
  //# sourceMappingURL=photon-loader-lite.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"photon-loader-lite.js","sourceRoot":"","sources":["../src/photon-loader-lite.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,KAAK,EAAE,MAAM,aAAa,CAAC;AAClC,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AACpC,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,eAAe,EAAsB,MAAM,uBAAuB,CAAC;AAC5E,OAAO,EACL,oBAAoB,EACpB,eAAe,EACf,kBAAkB,GAKnB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;AAGrD,OAAO,EAAE,YAAY,EAAE,aAAa,EAAyB,MAAM,gBAAgB,CAAC;AAGpF,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AA6B9C,sEAAsE;AACtE,2CAA2C;AAC3C,sEAAsE;AAEtE,yDAAyD;AACzD,MAAM,YAAY,GAAG,IAAI,GAAG,EAAU,CAAC;AAEvC,6EAA6E;AAC7E,MAAM,aAAa,GAAG,IAAI,GAAG,EAAe,CAAC;AAE7C,6BAA6B;AAC7B,MAAM,YAAY,GAAG,IAAI,GAAG,EAAwB,CAAC;AAErD,sEAAsE;AACtE,WAAW;AACX,sEAAsE;AAEtE;;;;;;;;;GASG;AACH,MAAM,CAAC,KAAK,UAAU,MAAM,CAC1B,QAAgB,EAChB,UAAyB,EAAE;IAE3B,2BAA2B;IAC3B,MAAM,YAAY,GAAG,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC;QAC5C,CAAC,CAAC,QAAQ;QACV,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,QAAQ,CAAC,CAAC;IAE1C,MAAM,YAAY,GAAG,OAAO,CAAC,YAAY,IAAI,EAAE,CAAC;IAChD,MAAM,QAAQ,GAAG,YAAY,CAAC,CAAC,CAAC,GAAG,YAAY,KAAK,YAAY,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC;IAElF,mEAAmE;IACnE,IAAI,YAAY,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC;QACnC,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACxE,MAAM,IAAI,KAAK,CAAC,gCAAgC,KAAK,EAAE,CAAC,CAAC;IAC3D,CAAC;IAED,yBAAyB;IACzB,IAAI,aAAa,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;QAChC,OAAO,aAAa,CAAC,GAAG,CAAC,QAAQ,CAAM,CAAC;IAC1C,CAAC;IAED,yBAAyB;IACzB,IAAI,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC/B,OAAO,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAe,CAAC;IAClD,CAAC;IAED,MAAM,OAAO,GAAG,kBAAkB,CAAC,YAAY,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;IACpE,YAAY,CAAC,GAAG,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IAEpC,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC;QAC7B,aAAa,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QACpC,OAAO,MAAW,CAAC;IACrB,CAAC;YAAS,CAAC;QACT,YAAY,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IAChC,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,gBAAgB;IAC9B,aAAa,CAAC,KAAK,EAAE,CAAC;AACxB,CAAC;AAED,sEAAsE;AACtE,oBAAoB;AACpB,sEAAsE;AAEtE,KAAK,UAAU,kBAAkB,CAC/B,YAAoB,EACpB,QAAgB,EAChB,OAAsB;IAEtB,YAAY,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;IAE/B,IAAI,CAAC;QACH,iBAAiB;QACjB,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;QAExD,qCAAqC;QACrC,MAAM,YAAY,GAAG,MAAM,eAAe,CAAC,YAAY,EAAE,EAAE,QAAQ,EAAE,WAAW,EAAE,EAAE,CAAC,CAAC;QAEtF,4BAA4B;QAC5B,MAAM,SAAS,GAAG,aAAa,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC;QACnD,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,SAAS,CAAC,CAAC;QAEvC,2BAA2B;QAC3B,MAAM,WAAW,GAAG,eAAe,CAAC,MAAiC,CAAC,CAAC;QACvE,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,4BAA4B,YAAY,EAAE,CAAC,CAAC;QAC9D,CAAC;QAED,uCAAuC;QACvC,MAAM,UAAU,GAAG,gBAAgB,CAAC,YAAY,CAAC,CAAC;QAElD,gDAAgD;QAChD,MAAM,SAAS,GAAG,IAAI,eAAe,EAAE,CAAC;QACxC,MAAM,QAAQ,GAAG,SAAS,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC;QACxD,MAAM,WAAW,GAAG,QAAQ,CAAC,KAAK,CAAC;QAEnC,oCAAoC;QACpC,MAAM,UAAU,GAAG,SAAS,CAAC,iBAAiB,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;QACnE,MAAM,eAAe,GAAG,MAAM,sBAAsB,CAClD,UAAU,EACV,UAAU,EACV,YAAY,EACZ,OAAO,CACR,CAAC;QAEF,yDAAyD;QACzD,MAAM,aAAa,GAAG,sBAAsB,CAAC,WAAW,CAAC,CAAC;QAE1D,iBAAiB;QACjB,MAAM,QAAQ,GAAG,IAAI,aAAa,CAAC,GAAG,eAAe,CAAwB,CAAC;QAE9E,0BAA0B;QAC1B,QAAQ,CAAC,WAAW,GAAG,UAAU,CAAC;QAClC,QAAQ,CAAC,gBAAgB,GAAG,OAAO,CAAC,SAAS,IAAI,OAAO,CAAC;QACzD,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;YACzB,QAAQ,CAAC,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC;QAC/C,CAAC;QACD,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;YACtB,QAAQ,CAAC,UAAU,GAAG,OAAO,CAAC,SAAS,CAAC;QAC1C,CAAC;QAED,gCAAgC;QAChC,uBAAuB,CAAC,QAAQ,CAAC,CAAC;QAElC,uDAAuD;QACvD,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;QAEvD,qCAAqC;QACrC,IAAI,OAAO,CAAC,UAAU,IAAI,OAAO,QAAQ,CAAC,aAAa,KAAK,UAAU,EAAE,CAAC;YACvE,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QAC7C,CAAC;QAED,+DAA+D;QAC/D,QAAQ,CAAC,YAAY,GAAG,KAAK,EAC3B,gBAAwB,EACxB,MAAc,EACd,MAA2B,EAC3B,EAAE;YACF,MAAM,UAAU,GAAG,iBAAiB,CAAC,gBAAgB,EAAE,YAAY,CAAC,CAAC;YACrE,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,UAAU,EAAE;gBACtC,OAAO,EAAE,OAAO,CAAC,OAAO;gBACxB,UAAU,EAAE,OAAO,CAAC,UAAU;gBAC9B,SAAS,EAAE,OAAO,CAAC,SAAS;aAC7B,CAAC,CAAC;YACH,OAAQ,MAAc,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC;QACzC,CAAC,CAAC;QAEF,uCAAuC;QACvC,IAAI,OAAO,QAAQ,CAAC,YAAY,KAAK,UAAU,EAAE,CAAC;YAChD,MAAM,QAAQ,CAAC,YAAY,EAAE,CAAC;QAChC,CAAC;QAED,6BAA6B;QAC7B,MAAM,KAAK,GAAG,oBAAoB,CAAC,QAAQ,EAAE,UAAU,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC;QAE/E,OAAO,KAAK,CAAC;IACf,CAAC;YAAS,CAAC;QACT,YAAY,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;IACpC,CAAC;AACH,CAAC;AAED,sEAAsE;AACtE,wBAAwB;AACxB,sEAAsE;AAEtE,KAAK,UAAU,sBAAsB,CACnC,UAME,EACF,UAAkB,EAClB,WAAmB,EACnB,OAAsB;IAEtB,MAAM,MAAM,GAAU,EAAE,CAAC;IACzB,MAAM,OAAO,GAAuB,EAAE,CAAC;IAEvC,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;QACnC,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,GAAG,SAAS,CAAC;QAE3C,QAAQ,aAAa,EAAE,CAAC;YACtB,KAAK,QAAQ,CAAC,CAAC,CAAC;gBACd,2BAA2B;gBAC3B,MAAM,GAAG,GAAG,SAAS,CAAC,gBAAiB,CAAC;gBACxC,MAAM,OAAO,GAAG,oBAAoB,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;gBAC9E,MAAM,WAAW,GAAG,MAAM,MAAM,CAAC,OAAO,EAAE;oBACxC,OAAO,EAAE,OAAO,CAAC,OAAO;oBACxB,UAAU,EAAE,OAAO,CAAC,UAAU;oBAC9B,YAAY,EAAE,GAAG,CAAC,YAAY;oBAC9B,SAAS,EAAE,OAAO,CAAC,SAAS;iBAC7B,CAAC,CAAC;gBACH,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;gBACzB,MAAM;YACR,CAAC;YAED,KAAK,KAAK,CAAC,CAAC,CAAC;gBACX,qCAAqC;gBACrC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;oBACxB,MAAM,IAAI,KAAK,CACb,WAAW,UAAU,8BAA8B,KAAK,CAAC,IAAI,oCAAoC;wBACjG,iDAAiD,CAClD,CAAC;gBACJ,CAAC;gBACD,+DAA+D;gBAC/D,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBACvB,MAAM;YACR,CAAC;YAED,KAAK,KAAK,CAAC,CAAC,CAAC;gBACX,MAAM,UAAU,GAAG,SAAS,CAAC,UAAU,IAAI,YAAY,CAAC,UAAU,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;gBAChF,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;gBAEzC,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;oBAC3B,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;gBACnD,CAAC;qBAAM,IAAI,KAAK,CAAC,UAAU,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;oBAChD,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBACzB,CAAC;qBAAM,CAAC;oBACN,OAAO,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,KAAK,CAAC,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;oBACtE,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBACzB,CAAC;gBACD,MAAM;YACR,CAAC;YAED,KAAK,OAAO,CAAC,CAAC,CAAC;gBACb,4EAA4E;gBAC5E,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBACvB,MAAM;YACR,CAAC;YAED;gBACE,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC3B,CAAC;IACH,CAAC;IAED,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACvB,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,UAAU,KAAK,CAAC,CAAC,SAAS,KAAK,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7F,OAAO,CAAC,IAAI,CACV,OAAO,UAAU,qCAAqC,OAAO,IAAI;YACjE,4CAA4C,CAC7C,CAAC;IACJ,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,sEAAsE;AACtE,6BAA6B;AAC7B,sEAAsE;AAEtE,SAAS,uBAAuB,CAAC,QAA6B;IAC5D,MAAM,IAAI,GAAG,OAAO,QAAQ,CAAC,IAAI,KAAK,UAAU;QAC9C,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC;QAC9B,CAAC,CAAC,IAAI,CAAC;IAET,IAAI,CAAC,IAAI;QAAE,OAAO;IAElB,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;QACxC,MAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;QAC5B,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ;YAAE,SAAS;QAElD,MAAM,QAAQ,GAAG,KAAK,CAAC,WAAW,EAAE,IAAI,CAAC;QACzC,IACE,QAAQ,KAAK,eAAe;YAC5B,QAAQ,KAAK,aAAa;YAC1B,QAAQ,KAAK,aAAa;YAC1B,QAAQ,KAAK,YAAY,EACzB,CAAC;YACD,KAAK,CAAC,aAAa,GAAG,GAAG,CAAC;YAC1B,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC;QACxB,CAAC;IACH,CAAC;AACH,CAAC;AAED,sEAAsE;AACtE,4BAA4B;AAC5B,sEAAsE;AAEtE,SAAS,mBAAmB,CAC1B,QAA6B,EAC7B,MAAc,EACd,OAAsC;IAEtC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC;QAAE,OAAO;IAEzC,8DAA8D;IAC9D,MAAM,gBAAgB,GAAG,IAAI,GAAG,CAAC;QAC/B,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,YAAY;KAC/E,CAAC,CAAC;IAEH,sDAAsD;IACtD,0FAA0F;IAC1F,MAAM,WAAW,GAAa,EAAE,CAAC;IACjC,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,IAAI,KAAK,GAAG,MAAM,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;IAC5C,OAAO,KAAK,IAAI,KAAK,KAAK,MAAM,CAAC,SAAS,EAAE,CAAC;QAC3C,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,mBAAmB,CAAC,KAAK,CAAC,EAAE,CAAC;YACrD,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI,KAAK,aAAa,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;gBAAE,SAAS;YAC/E,IAAI,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC;gBAAE,SAAS;YACzC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YACf,MAAM,UAAU,GAAG,MAAM,CAAC,wBAAwB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;YAChE,IAAI,UAAU,IAAI,OAAO,UAAU,CAAC,KAAK,KAAK,UAAU,EAAE,CAAC;gBACzD,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACzB,CAAC;QACH,CAAC;QACD,KAAK,GAAG,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;IACvC,CAAC;IAED,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO;IAErC,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;QACrC,MAAM,QAAQ,GAAG,QAAQ,CAAC,UAAU,CAAC,CAAC;QACtC,IAAI,OAAO,QAAQ,KAAK,UAAU;YAAE,SAAS;QAE7C,QAAQ,CAAC,UAAU,CAAC,GAAG,UAAqB,GAAG,IAAW;YACxD,MAAM,UAAU,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAC;YAC/C,MAAM,MAAM,GAAG,MAAM,CAAC,WAAW,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAEhF,MAAM,MAAM,GAAG,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YAE1C,qCAAqC;YACrC,MAAM,UAAU,GAAG,CAAC,GAAQ,EAAE,EAAE;gBAC9B,IAAI,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC;oBACzE,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;oBAC3C,MAAM,CAAC,cAAc,CAAC,GAAG,EAAE,QAAQ,EAAE;wBACnC,KAAK,EAAE;4BACL,SAAS,EAAE,SAAS;4BACpB,SAAS,EAAE,UAAU;4BACrB,UAAU,EAAE,IAAI;4BAChB,UAAU,EAAE,IAAI;4BAChB,aAAa,EAAE,EAAE;yBAClB;wBACD,UAAU,EAAE,KAAK;wBACjB,QAAQ,EAAE,IAAI;wBACd,YAAY,EAAE,IAAI;qBACnB,CAAC,CAAC;gBACL,CAAC;gBAED,aAAa;gBACb,IAAI,OAAO,EAAE,CAAC;oBACZ,MAAM,KAAK,GAAgB;wBACzB,MAAM,EAAE,UAAU;wBAClB,MAAM;wBACN,MAAM,EAAE,GAAG;wBACX,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;qBACpC,CAAC;oBACF,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;wBACtB,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC;oBACrC,CAAC;oBACD,OAAO,CAAC,KAAK,CAAC,CAAC;gBACjB,CAAC;gBAED,OAAO,GAAG,CAAC;YACb,CAAC,CAAC;YAEF,2CAA2C;YAC3C,IAAI,MAAM,IAAI,OAAO,MAAM,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;gBAChD,OAAO,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YACjC,CAAC;YAED,OAAO,UAAU,CAAC,MAAM,CAAC,CAAC;QAC5B,CAAC,CAAC;IACJ,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAS,iBAAiB,CAAC,EAA2B;IACpD,MAAM,KAAK,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC;IAC5B,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;IACzC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QAAE,OAAO,EAAE,CAAC;IAE3B,OAAO,KAAK,CAAC,CAAC,CAAC;SACZ,KAAK,CAAC,GAAG,CAAC;SACV,GAAG,CAAC,KAAK,CAAC,EAAE;QACX,MAAM,OAAO,GAAG,KAAK;aAClB,IAAI,EAAE;aACN,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAE,uBAAuB;aACtC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAE,0BAA0B;aACzC,IAAI,EAAE,CAAC;QACV,OAAO,OAAO,CAAC;IACjB,CAAC,CAAC;SACD,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,IAAI,IAAI,KAAK,MAAM,CAAC,CAAC;AAC7C,CAAC;AAED,sEAAsE;AACtE,mBAAmB;AACnB,sEAAsE;AAEtE,SAAS,oBAAoB,CAC3B,QAA6B,EAC7B,UAAkB,EAClB,WAA8B,EAC9B,OAAsB;IAEtB,0CAA0C;IAC1C,MAAM,OAAO,GAAG,IAAI,GAAG,EAA2B,CAAC;IACnD,KAAK,MAAM,MAAM,IAAI,WAAW,EAAE,CAAC;QACjC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IACnC,CAAC;IAED,gDAAgD;IAChD,MAAM,WAAW,GAAG,IAAI,GAAG,EAA2B,CAAC;IAEvD,wFAAwF;IACxF,MAAM,QAAQ,GAAG,IAAI,kBAAkB,EAAE,CAAC;IAC1C,KAAK,MAAM,IAAI,IAAI,eAAe,CAAC,KAAK,EAAE,EAAE,CAAC;QAC3C,QAAQ,CAAC,QAAQ,CAAC,eAAe,CAAC,GAAG,CAAC,IAAI,CAAE,CAAC,CAAC;IAChD,CAAC;IAED,OAAO,IAAI,KAAK,CAAC,QAAQ,EAAE;QACzB,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,QAAQ;YACxB,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;YAClD,IAAI,OAAO,KAAK,KAAK,UAAU;gBAAE,OAAO,KAAK,CAAC;YAC9C,IAAI,OAAO,IAAI,KAAK,QAAQ;gBAAE,OAAO,KAAK,CAAC;YAE3C,gCAAgC;YAChC,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,IAAI,KAAK,aAAa,EAAE,CAAC;gBACnD,OAAO,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAC5B,CAAC;YAED,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YACjC,MAAM,YAAY,GAA4B,MAAM,EAAE,UAAU,IAAI,EAAE,CAAC;YAEvE,+CAA+C;YAC/C,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC9B,OAAO,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAC5B,CAAC;YAED,yDAAyD;YACzD,OAAO,CAAC,GAAG,IAAW,EAAE,EAAE;gBACxB,MAAM,GAAG,GAAsB;oBAC7B,MAAM,EAAE,UAAU;oBAClB,IAAI,EAAE,IAAI;oBACV,QAAQ,EAAE,OAAO,CAAC,YAAY,IAAI,SAAS;oBAC3C,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE;iBACtB,CAAC;gBAEF,MAAM,OAAO,GAAG,GAAG,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;gBAChD,MAAM,KAAK,GAAG,oBAAoB,CAChC,OAAO,EACP,YAAY,EACZ,QAAQ,EACR,WAAW,EACX,GAAG,CACJ,CAAC;gBAEF,OAAO,KAAK,EAAE,CAAC;YACjB,CAAC,CAAC;QACJ,CAAC;KACF,CAAC,CAAC;AACL,CAAC;AAED,sEAAsE;AACtE,iBAAiB;AACjB,sEAAsE;AAEtE;;;GAGG;AACH,SAAS,gBAAgB,CAAC,QAAgB;IACxC,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IACzC,OAAO,QAAQ;SACZ,OAAO,CAAC,wBAAwB,EAAE,EAAE,CAAC;SACrC,OAAO,CAAC,gBAAgB,EAAE,EAAE,CAAC,CAAC;AACnC,CAAC;AAED;;GAEG;AACH,SAAS,oBAAoB,CAC3B,MAAc,EACd,UAAkB,EAClB,iBAAyB;IAEzB,IAAI,UAAU,KAAK,OAAO,EAAE,CAAC;QAC3B,IAAI,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;YACxD,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,EAAE,MAAM,CAAC,CAAC;QAC/D,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,6DAA6D;IAC7D,IAAI,UAAU,KAAK,aAAa,EAAE,CAAC;QACjC,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,OAAO,CAAC,GAAG,CAAC,WAAW,IAAI,EAAE,CAAC;QAClE,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,MAAM,YAAY,CAAC,CAAC;IACjF,CAAC;IAED,0DAA0D;IAC1D,MAAM,IAAI,KAAK,CACb,kBAAkB,UAAU,uBAAuB,MAAM,oBAAoB;QAC7E,0DAA0D;QAC1D,mDAAmD,CACpD,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,SAAS,iBAAiB,CAAC,UAAkB,EAAE,UAAkB;IAC/D,yBAAyB;IACzB,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;IACrC,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,UAAU,YAAY,CAAC,CAAC;IAE9D,8DAA8D;IAC9D,uFAAuF;IACvF,OAAO,WAAW,CAAC;AACrB,CAAC"}
1
+ {"version":3,"file":"photon-loader-lite.js","sourceRoot":"","sources":["../src/photon-loader-lite.ts"],"names":[],"mappings":"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"}
@@ -225,10 +225,15 @@ export declare class SchemaExtractor {
225
225
  */
226
226
  private extractNotifyOn;
227
227
  /**
228
- * Extract webhook configuration from @webhook tag or handle* prefix
228
+ * Extract webhook configuration from @webhook tag or handle* prefix.
229
229
  * - @webhook → use method name as path
230
230
  * - @webhook stripe → custom path "stripe"
231
- * - handle* prefix → auto-detected as webhook
231
+ * - handle* prefix → auto-detected as webhook (DEPRECATED)
232
+ *
233
+ * The handle* prefix is a legacy convention being removed. It still
234
+ * works for one release but emits a one-time stderr warning per
235
+ * method so users can migrate to the explicit @webhook tag before
236
+ * the convention is dropped.
232
237
  */
233
238
  private extractWebhook;
234
239
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"schema-extractor.d.ts","sourceRoot":"","sources":["../src/schema-extractor.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAIH,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,YAAY,EAAE,UAAU,EAA2B,aAAa,EAAE,gBAAgB,EAAE,aAAa,EAAE,iBAAiB,EAAE,YAAY,EAAuC,YAAY,EAAe,cAAc,EAAoB,wBAAwB,EAAE,MAAM,YAAY,CAAC;AAE/T,OAAO,EAAmB,KAAK,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAE9E,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,eAAe,EAAE,CAAC;IACzB,SAAS,EAAE,YAAY,EAAE,CAAC;IAC1B,OAAO,EAAE,UAAU,EAAE,CAAC;IACtB,mEAAmE;IACnE,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,+DAA+D;IAC/D,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,oDAAoD;IACpD,yBAAyB,CAAC,EAAE,wBAAwB,CAAC;IACrD;;;;;OAKG;IACH,IAAI,CAAC,EAAE,UAAU,GAAG,UAAU,GAAG,MAAM,CAAC;CACzC;AAED;;GAEG;AACH,qBAAa,eAAe;IAC1B;;OAEG;IACG,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;IAUnE;;OAEG;IACH,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,iBAAiB;IAkdvD;;OAEG;IACH,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,eAAe,EAAE;IAIpD;;OAEG;IACH,OAAO,CAAC,eAAe;IAqBvB;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAS7B;;;;;;OAMG;IACH,OAAO,CAAC,mBAAmB;IAkE3B;;;OAGG;IACH,OAAO,CAAC,mBAAmB;IAoD3B;;;OAGG;IACH,OAAO,CAAC,gBAAgB;IAsBxB;;OAEG;IACH,OAAO,CAAC,gBAAgB;IA+GxB;;;OAGG;IACH,OAAO,CAAC,gBAAgB;IA2BxB;;;;;OAKG;IACH,OAAO,CAAC,oBAAoB;IA0F5B;;;OAGG;IACH,OAAO,CAAC,eAAe;IAKvB;;OAEG;IACH,wBAAwB,CAAC,MAAM,EAAE,MAAM,GAAG,gBAAgB,EAAE;IAoD5D;;OAEG;IACH;;OAEG;IACH,OAAO,CAAC,4BAA4B;IAqBpC,OAAO,CAAC,mBAAmB;IAmE3B;;;;OAIG;IACH,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAUvD;;;;OAIG;IACH,sBAAsB,CAAC,YAAY,EAAE,MAAM,GAAG,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;KAAE,CAAC;IAaxG;;;;OAIG;IACH,2BAA2B,CAAC,YAAY,EAAE,MAAM,GAAG,qBAAqB,EAAE;IAoH1E;;OAEG;IACH,OAAO,CAAC,kBAAkB;IA4C1B;;;OAGG;IACH;;OAEG;IACH,OAAO,CAAC,iBAAiB;IA6CzB,OAAO,CAAC,gBAAgB;IAqCxB;;;;OAIG;IACH,OAAO,CAAC,uBAAuB;IAqN/B;;;;;OAKG;IACH,OAAO,CAAC,gBAAgB;IA2OxB;;OAEG;IACH,OAAO,CAAC,cAAc;IAItB;;OAEG;IACH,OAAO,CAAC,YAAY;IAIpB;;;OAGG;IACH,OAAO,CAAC,cAAc;IAItB;;;OAGG;IACH,OAAO,CAAC,aAAa;IAIrB;;;OAGG;IACH,OAAO,CAAC,WAAW;IAInB;;;OAGG;IACH,OAAO,CAAC,YAAY;IAQpB;;;;OAIG;IACH,OAAO,CAAC,eAAe;IAMvB;;;OAGG;IACH,OAAO,CAAC,kBAAkB;IAI1B;;;OAGG;IACH,OAAO,CAAC,iBAAiB;IAIzB;;;;;OAKG;IACH,OAAO,CAAC,oBAAoB;IAM5B;;;;;OAKG;IACH,OAAO,CAAC,eAAe;IAUvB;;OAEG;IACH,OAAO,CAAC,sBAAsB;IAW9B;;;;;OAKG;IACH,OAAO,CAAC,+BAA+B;IA6BvC;;;;OAIG;IACH,OAAO,CAAC,eAAe;IAuBvB;;;;;OAKG;IACH,OAAO,CAAC,cAAc;IAkBtB;;;;;OAKG;IACH,OAAO,CAAC,gBAAgB;IAsBxB;;;;OAIG;IACH,OAAO,CAAC,aAAa;IAgBrB;;;;OAIG;IACH,OAAO,CAAC,aAAa;IAMrB;;;;;;OAMG;IACH,OAAO,CAAC,eAAe;IAMvB;;;;OAIG;IACH,OAAO,CAAC,qBAAqB;IAM7B;;;;;OAKG;IACH,OAAO,CAAC,aAAa;IAOrB;;;;OAIG;IACH,OAAO,CAAC,cAAc;IAMtB;;;;;OAKG;IACH,OAAO,CAAC,gBAAgB;IAyBxB;;;;OAIG;IACH,OAAO,CAAC,gBAAgB;IA0CxB;;;;;OAKG;IACH,OAAO,CAAC,gBAAgB;IAOxB;;;;OAIG;IACH,OAAO,CAAC,aAAa;IAOrB;;;;OAIG;IACH,OAAO,CAAC,kBAAkB;IAwB1B;;;;;;;OAOG;IACH,OAAO,CAAC,iBAAiB;IAQzB;;;OAGG;IACH,OAAO,CAAC,gBAAgB;IAKxB;;;;;;;OAOG;IACH,OAAO,CAAC,aAAa;IAkDrB;;;;OAIG;IACH,OAAO,CAAC,kBAAkB;IAuB1B;;;;OAIG;IACH,OAAO,CAAC,kBAAkB;IAS1B;;;;;;OAMG;IACH,OAAO,CAAC,WAAW;IAenB;;;;;;;OAOG;IACH,OAAO,CAAC,iBAAiB;IA0BzB;;;OAGG;IACH,OAAO,CAAC,eAAe;IAKvB;;;;OAIG;IACH,OAAO,CAAC,sBAAsB;IAkB9B;;;;;;;;;;;;;;;;;;;OAmBG;IACH,sBAAsB,CAAC,MAAM,EAAE,MAAM,GAAG,aAAa,EAAE;IAyBvD;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAsBzB;;;;;;;;;;;;;;;;;;;OAmBG;IACH,yBAAyB,CAAC,MAAM,EAAE,MAAM,GAAG,gBAAgB,EAAE;IA+B7D;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAuB5B;;;;;;;;;;;;;OAaG;IACH,sBAAsB,CAAC,MAAM,EAAE,MAAM,GAAG,aAAa,EAAE;IAoBvD;;;;;;;;;OASG;IACH,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,iBAAiB,EAAE;IA6EvE;;;OAGG;IACH,OAAO,CAAC,YAAY;IAapB;;;;;;;;;;;;;;;;;;OAkBG;IACH,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,YAAY;IAgBjE;;;;OAIG;IACH,OAAO,CAAC,eAAe;IAkBvB;;;;OAIG;IACH,OAAO,CAAC,mBAAmB;IAgB3B;;;;OAIG;IACH,OAAO,CAAC,qBAAqB;IAiB7B;;;OAGG;IACH,OAAO,CAAC,oBAAoB;IA+C5B;;OAEG;IACH,OAAO,CAAC,mBAAmB;CAiC5B;AAED;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG,MAAM,GAAG,QAAQ,GAAG,MAAM,GAAG,KAAK,GAAG,MAAM,GAAG,cAAc,GAAG,cAAc,GAAG,QAAQ,CAAC;AAExH;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,GAAG,CAAC,gBAAgB,CAAC,CAYxE"}
1
+ {"version":3,"file":"schema-extractor.d.ts","sourceRoot":"","sources":["../src/schema-extractor.ts"],"names":[],"mappings":"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"}
@@ -11,6 +11,18 @@ import * as fs from 'fs/promises';
11
11
  import * as ts from 'typescript';
12
12
  import { parseDuration, parseRate } from './utils/duration.js';
13
13
  import { builtinRegistry } from './middleware.js';
14
+ // Track which `handle*` method names have already emitted a deprecation
15
+ // warning this process so large photons don't spam the console.
16
+ const handlePrefixWarned = new Set();
17
+ function warnHandlePrefixOnce(methodName) {
18
+ if (handlePrefixWarned.has(methodName))
19
+ return;
20
+ handlePrefixWarned.add(methodName);
21
+ // eslint-disable-next-line no-console
22
+ console.error(`[photon] deprecation: method "${methodName}" is being auto-registered as a ` +
23
+ `webhook via the legacy handle* prefix. Add an explicit "@webhook" JSDoc ` +
24
+ `tag; the prefix convention will be removed in the next minor release.`);
25
+ }
14
26
  /**
15
27
  * Extract schemas from a Photon MCP class file
16
28
  */
@@ -1790,10 +1802,15 @@ export class SchemaExtractor {
1790
1802
  // DAEMON FEATURE EXTRACTION
1791
1803
  // ═══════════════════════════════════════════════════════════════════════════════
1792
1804
  /**
1793
- * Extract webhook configuration from @webhook tag or handle* prefix
1805
+ * Extract webhook configuration from @webhook tag or handle* prefix.
1794
1806
  * - @webhook → use method name as path
1795
1807
  * - @webhook stripe → custom path "stripe"
1796
- * - handle* prefix → auto-detected as webhook
1808
+ * - handle* prefix → auto-detected as webhook (DEPRECATED)
1809
+ *
1810
+ * The handle* prefix is a legacy convention being removed. It still
1811
+ * works for one release but emits a one-time stderr warning per
1812
+ * method so users can migrate to the explicit @webhook tag before
1813
+ * the convention is dropped.
1797
1814
  */
1798
1815
  extractWebhook(jsdocContent, methodName) {
1799
1816
  // Check for @webhook tag with optional path
@@ -1804,8 +1821,9 @@ export class SchemaExtractor {
1804
1821
  // Return custom path if specified, otherwise true for bare @webhook
1805
1822
  return path || true;
1806
1823
  }
1807
- // Check for handle* prefix (convention)
1824
+ // Check for handle* prefix (legacy convention — deprecated).
1808
1825
  if (methodName.startsWith('handle')) {
1826
+ warnHandlePrefixOnce(methodName);
1809
1827
  return true;
1810
1828
  }
1811
1829
  return undefined;