@mastra/koa 1.5.2-alpha.1 → 1.5.2-alpha.13
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/CHANGELOG.md +120 -0
- package/dist/index.cjs +15 -5
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +15 -5
- package/dist/index.js.map +1 -1
- package/package.json +9 -9
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,125 @@
|
|
|
1
1
|
# @mastra/koa
|
|
2
2
|
|
|
3
|
+
## 1.5.2-alpha.13
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- Fixed `TypeError: Cannot read properties of undefined (reading 'length')` thrown during `MastraServer.init()` when a subclass forwards a non-Koa app-like object (for example a `koa-router` instance, a mounted sub-app, or a custom wrapper) to `super.registerRoute(app, route, opts)`. The dispatcher-reuse optimization introduced in 1.5.0 now requires the target to expose an `app.middleware` array; otherwise it falls back to registering a fresh dispatcher per route via `app.use`, matching the pre-1.5.0 per-route behavior. ([#16484](https://github.com/mastra-ai/mastra/pull/16484))
|
|
8
|
+
|
|
9
|
+
**Example (subclass that previously crashed):**
|
|
10
|
+
|
|
11
|
+
```ts
|
|
12
|
+
import { MastraServer } from '@mastra/koa';
|
|
13
|
+
import Router from 'koa-router';
|
|
14
|
+
|
|
15
|
+
class CustomKoaMastraServer extends MastraServer {
|
|
16
|
+
private router = new Router();
|
|
17
|
+
|
|
18
|
+
async registerCustomApiRoutes() {
|
|
19
|
+
const routes = this.mastra.getServer()?.apiRoutes ?? [];
|
|
20
|
+
for (const route of routes) {
|
|
21
|
+
// The router has no `middleware` array — this used to throw at init.
|
|
22
|
+
await super.registerRoute(this.router as any, route, { prefix: this.prefix });
|
|
23
|
+
}
|
|
24
|
+
this.app.use(this.router.routes());
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
- Updated dependencies [[`f984b4d`](https://github.com/mastra-ai/mastra/commit/f984b4d6c60bf2ae2a9b156f0e8c35a66fe96c91), [`ce01024`](https://github.com/mastra-ai/mastra/commit/ce010242eee9bdfc09e4c26725b9d37998679a8d), [`f984b4d`](https://github.com/mastra-ai/mastra/commit/f984b4d6c60bf2ae2a9b156f0e8c35a66fe96c91), [`8373ff4`](https://github.com/mastra-ai/mastra/commit/8373ff46745d77af79f183c4470f80fa2727a6b2), [`11c1528`](https://github.com/mastra-ai/mastra/commit/11c152848c5d0ef227184853b5040f5b41ee7b1e)]:
|
|
30
|
+
- @mastra/core@1.33.0-alpha.13
|
|
31
|
+
- @mastra/server@1.33.0-alpha.13
|
|
32
|
+
|
|
33
|
+
## 1.5.2-alpha.12
|
|
34
|
+
|
|
35
|
+
### Patch Changes
|
|
36
|
+
|
|
37
|
+
- Updated dependencies [[`b59316f`](https://github.com/mastra-ai/mastra/commit/b59316ffa0f7688165b0f9c81ccdf85da461e5b2), [`55f1e2d`](https://github.com/mastra-ai/mastra/commit/55f1e2d65425b95a49ae788053b266f256e38c96), [`d48a705`](https://github.com/mastra-ai/mastra/commit/d48a705ff3dfbdc7a996e07ecd8293b5effd9a2a)]:
|
|
38
|
+
- @mastra/core@1.33.0-alpha.12
|
|
39
|
+
- @mastra/server@1.33.0-alpha.12
|
|
40
|
+
|
|
41
|
+
## 1.5.2-alpha.11
|
|
42
|
+
|
|
43
|
+
### Patch Changes
|
|
44
|
+
|
|
45
|
+
- Updated dependencies [[`37c0dc5`](https://github.com/mastra-ai/mastra/commit/37c0dc5697d343db98628bf867bf71ce6deec6d7), [`ef6b584`](https://github.com/mastra-ai/mastra/commit/ef6b5847ac33c0a7e80af3a86e8801e2933dd3ee), [`4dd900d`](https://github.com/mastra-ai/mastra/commit/4dd900d75dfe9be89f8c15188b368a8622aa1e18), [`4ff5bdf`](https://github.com/mastra-ai/mastra/commit/4ff5bdfe170cba6dfb5260c6af0f4ba668430772), [`bbcd93c`](https://github.com/mastra-ai/mastra/commit/bbcd93cf7d8aa1007d6d84bfd033b8015c912087), [`308bd07`](https://github.com/mastra-ai/mastra/commit/308bd074f35cef0c75d82fc1eb19382fe04ecf6f)]:
|
|
46
|
+
- @mastra/core@1.33.0-alpha.11
|
|
47
|
+
- @mastra/server@1.33.0-alpha.11
|
|
48
|
+
|
|
49
|
+
## 1.5.2-alpha.10
|
|
50
|
+
|
|
51
|
+
### Patch Changes
|
|
52
|
+
|
|
53
|
+
- Updated dependencies [[`7ad5585`](https://github.com/mastra-ai/mastra/commit/7ad55856406f1de398dc713f6a9eaa78b2784bb6), [`210ea7a`](https://github.com/mastra-ai/mastra/commit/210ea7af559791b73a44fc9c12179908aaa3183f), [`83218c8`](https://github.com/mastra-ai/mastra/commit/83218c88b37773c9424fbe733b37be556e55e94d), [`265ec9f`](https://github.com/mastra-ai/mastra/commit/265ec9f887b5c81255c873a76ff7796f16e4f99b), [`6ce80bf`](https://github.com/mastra-ai/mastra/commit/6ce80bf4872a891e0bddf8b80561a80584efb14b), [`9268531`](https://github.com/mastra-ai/mastra/commit/9268531e7ec4be98beeba3b3ae8be0a7ea380662), [`13ead79`](https://github.com/mastra-ai/mastra/commit/13ead79149486b88144db7e11e6ff551caef5be1), [`bd36d8e`](https://github.com/mastra-ai/mastra/commit/bd36d8eb6de8c9a0310352649dbd4b06703c2299), [`8ac9141`](https://github.com/mastra-ai/mastra/commit/8ac9141439caa8fdd674944c4d84f29b3c730296)]:
|
|
54
|
+
- @mastra/core@1.33.0-alpha.10
|
|
55
|
+
- @mastra/server@1.33.0-alpha.10
|
|
56
|
+
|
|
57
|
+
## 1.5.2-alpha.9
|
|
58
|
+
|
|
59
|
+
### Patch Changes
|
|
60
|
+
|
|
61
|
+
- Updated dependencies [[`5688881`](https://github.com/mastra-ai/mastra/commit/5688881669c7ed157f31ac77f6fc5f8d95ceea32)]:
|
|
62
|
+
- @mastra/core@1.33.0-alpha.9
|
|
63
|
+
- @mastra/server@1.33.0-alpha.9
|
|
64
|
+
|
|
65
|
+
## 1.5.2-alpha.8
|
|
66
|
+
|
|
67
|
+
### Patch Changes
|
|
68
|
+
|
|
69
|
+
- Updated dependencies [[`7c275a8`](https://github.com/mastra-ai/mastra/commit/7c275a810595e1a6c41ccc39720531ab65734700), [`890b24c`](https://github.com/mastra-ai/mastra/commit/890b24cc7d32ed6aa4dfe253e54dc6bf4099f690), [`0f48ebf`](https://github.com/mastra-ai/mastra/commit/0f48ebfc7ac7897b2092a189f45751924cf56d1c), [`f180e49`](https://github.com/mastra-ai/mastra/commit/f180e4990e71b04c9a475b523584071712f0048f), [`9260e01`](https://github.com/mastra-ai/mastra/commit/9260e015276fb1b500f7878ee452b47476bf1583), [`2f6c54e`](https://github.com/mastra-ai/mastra/commit/2f6c54e17c041cac1def54baaa6b771647836414), [`e06a159`](https://github.com/mastra-ai/mastra/commit/e06a1598ca07a6c3778aefc2a2d288363c6294ff), [`db34bc6`](https://github.com/mastra-ai/mastra/commit/db34bc6fb36cf125bda0c46be4d3fdc774b70cc4)]:
|
|
70
|
+
- @mastra/core@1.33.0-alpha.8
|
|
71
|
+
- @mastra/server@1.33.0-alpha.8
|
|
72
|
+
|
|
73
|
+
## 1.5.2-alpha.7
|
|
74
|
+
|
|
75
|
+
### Patch Changes
|
|
76
|
+
|
|
77
|
+
- Improved Studio agent serialization by making Studio mode and auth-related request context server-controlled across adapters. Playground requests now identify Studio traffic consistently, body and query request context cannot set reserved server values, and Studio placeholder fallback is limited to instruction rendering while serialized models, workspace, skills, tools, and default options use the real request context. ([#16152](https://github.com/mastra-ai/mastra/pull/16152))
|
|
78
|
+
|
|
79
|
+
- Updated dependencies [[`6742347`](https://github.com/mastra-ai/mastra/commit/6742347d71955d7639adc9ddf6ff8282de7ee3ba), [`7d57eeb`](https://github.com/mastra-ai/mastra/commit/7d57eeb8ad67c2e93c39d8fddb697aa11d677dbb), [`7b0ad1f`](https://github.com/mastra-ai/mastra/commit/7b0ad1f5c53dc118c6da12ae82ae2587037dc2b8), [`62666c3`](https://github.com/mastra-ai/mastra/commit/62666c367eaeac3941ead454b1d38810cc855721), [`4af2160`](https://github.com/mastra-ai/mastra/commit/4af2160322f4718cac421930cce85641e9512389), [`136c959`](https://github.com/mastra-ai/mastra/commit/136c9592fb0eeb0cd212f28629d8a29b7557a2fc), [`4df7cc7`](https://github.com/mastra-ai/mastra/commit/4df7cc79342fd065fe7fdeef93c094db14b12bcd), [`aca3121`](https://github.com/mastra-ai/mastra/commit/aca31211233dac25459f140ea4fcfb3a5af64c18), [`284b0d7`](https://github.com/mastra-ai/mastra/commit/284b0d78d0edb306413447e5268007491006937c), [`9cdf38e`](https://github.com/mastra-ai/mastra/commit/9cdf38e58506e1109c8b38f97cd7770978a4218e), [`990851e`](https://github.com/mastra-ai/mastra/commit/990851edcb0e30be5c2c18b6532f1a876cc2d335), [`6068a6c`](https://github.com/mastra-ai/mastra/commit/6068a6c42950fad3ebfc92346417896ba60803d2), [`00106be`](https://github.com/mastra-ai/mastra/commit/00106bede59b81e5b0e9cd6aad8d3b5dbc336387), [`284b0d7`](https://github.com/mastra-ai/mastra/commit/284b0d78d0edb306413447e5268007491006937c), [`e2a079c`](https://github.com/mastra-ai/mastra/commit/e2a079cc3755b1895f7bd5dc36e9be81b11c7c22), [`534a456`](https://github.com/mastra-ai/mastra/commit/534a456a25e4df1e5407e7e632f4cb3b1fa14f9d), [`36bae07`](https://github.com/mastra-ai/mastra/commit/36bae07c0e70b1b3006f2fd20830e8883dcbd066)]:
|
|
80
|
+
- @mastra/core@1.33.0-alpha.7
|
|
81
|
+
- @mastra/server@1.33.0-alpha.7
|
|
82
|
+
|
|
83
|
+
## 1.5.2-alpha.6
|
|
84
|
+
|
|
85
|
+
### Patch Changes
|
|
86
|
+
|
|
87
|
+
- Updated dependencies [[`b560d6f`](https://github.com/mastra-ai/mastra/commit/b560d6f88b9b904b15c10f75c949eb145bc27684), [`36b3bbf`](https://github.com/mastra-ai/mastra/commit/36b3bbf5a8d59f7e23d47e29340e76c681b4929c), [`b275631`](https://github.com/mastra-ai/mastra/commit/b275631dc10541a482b2e2d4a3e3cfa843bd5fa1)]:
|
|
88
|
+
- @mastra/core@1.33.0-alpha.6
|
|
89
|
+
- @mastra/server@1.33.0-alpha.6
|
|
90
|
+
|
|
91
|
+
## 1.5.2-alpha.5
|
|
92
|
+
|
|
93
|
+
### Patch Changes
|
|
94
|
+
|
|
95
|
+
- Updated dependencies [[`bae019e`](https://github.com/mastra-ai/mastra/commit/bae019ecb6694da96909f7ec7b9eb3a0a33aa887), [`33f5061`](https://github.com/mastra-ai/mastra/commit/33f5061cd1c0335020c3faae61ce96de822854fa), [`99869ec`](https://github.com/mastra-ai/mastra/commit/99869ecb1f2aa6dfcc44fa4e843e5ee0344efa64), [`d86f031`](https://github.com/mastra-ai/mastra/commit/d86f031eb6b0b2570145afafea664e59bf688962)]:
|
|
96
|
+
- @mastra/core@1.33.0-alpha.5
|
|
97
|
+
- @mastra/server@1.33.0-alpha.5
|
|
98
|
+
|
|
99
|
+
## 1.5.2-alpha.4
|
|
100
|
+
|
|
101
|
+
### Patch Changes
|
|
102
|
+
|
|
103
|
+
- Updated dependencies [[`9f17410`](https://github.com/mastra-ai/mastra/commit/9f1741080def23d42ee50b39887a385ae316a3c6), [`c6eb39e`](https://github.com/mastra-ai/mastra/commit/c6eb39ea6dca381c6563cb240237fbe608e02f93), [`900d086`](https://github.com/mastra-ai/mastra/commit/900d086bb737b9cf2fcf68f11b0389b801a2738c), [`4c0e286`](https://github.com/mastra-ai/mastra/commit/4c0e28637c9cfb4f416549b55e97ebfa13319dfc), [`c6eb39e`](https://github.com/mastra-ai/mastra/commit/c6eb39ea6dca381c6563cb240237fbe608e02f93), [`25184ff`](https://github.com/mastra-ai/mastra/commit/25184ffaf1293ec95119426eb1a1f8d38831b96c), [`25184ff`](https://github.com/mastra-ai/mastra/commit/25184ffaf1293ec95119426eb1a1f8d38831b96c), [`aebde9c`](https://github.com/mastra-ai/mastra/commit/aebde9cfacf56592c6b6350cae721740fe090b8a)]:
|
|
104
|
+
- @mastra/core@1.33.0-alpha.4
|
|
105
|
+
- @mastra/server@1.33.0-alpha.4
|
|
106
|
+
|
|
107
|
+
## 1.5.2-alpha.3
|
|
108
|
+
|
|
109
|
+
### Patch Changes
|
|
110
|
+
|
|
111
|
+
- Updated dependencies [[`087e413`](https://github.com/mastra-ai/mastra/commit/087e4133e5d6efa36619e9556c16750e4179c047), [`087e413`](https://github.com/mastra-ai/mastra/commit/087e4133e5d6efa36619e9556c16750e4179c047), [`087e413`](https://github.com/mastra-ai/mastra/commit/087e4133e5d6efa36619e9556c16750e4179c047), [`087e413`](https://github.com/mastra-ai/mastra/commit/087e4133e5d6efa36619e9556c16750e4179c047), [`0461546`](https://github.com/mastra-ai/mastra/commit/0461546755951706ca81bc24d1d31013d9d70a6d)]:
|
|
112
|
+
- @mastra/core@1.33.0-alpha.3
|
|
113
|
+
- @mastra/server@1.33.0-alpha.3
|
|
114
|
+
|
|
115
|
+
## 1.5.2-alpha.2
|
|
116
|
+
|
|
117
|
+
### Patch Changes
|
|
118
|
+
|
|
119
|
+
- Updated dependencies [[`d1fdbd0`](https://github.com/mastra-ai/mastra/commit/d1fdbd012add5623cb7e6b7f882b605ab358bbb4), [`d91ebe2`](https://github.com/mastra-ai/mastra/commit/d91ebe28ee065d8f2ed6df741c3c07f58d359529)]:
|
|
120
|
+
- @mastra/core@1.33.0-alpha.2
|
|
121
|
+
- @mastra/server@1.33.0-alpha.2
|
|
122
|
+
|
|
3
123
|
## 1.5.2-alpha.1
|
|
4
124
|
|
|
5
125
|
### Patch Changes
|
package/dist/index.cjs
CHANGED
|
@@ -427,6 +427,10 @@ var MastraServer = class extends serverAdapter.MastraServer {
|
|
|
427
427
|
}
|
|
428
428
|
}
|
|
429
429
|
const requestContext = server.mergeRequestContext({ paramsRequestContext, bodyRequestContext });
|
|
430
|
+
server.applyRequestMetadataToContext({
|
|
431
|
+
requestContext,
|
|
432
|
+
getHeader: (name) => ctx.get(name)
|
|
433
|
+
});
|
|
430
434
|
ctx.state.requestContext = requestContext;
|
|
431
435
|
ctx.state.mastra = server.mastra;
|
|
432
436
|
ctx.state.tools = server.tools || {};
|
|
@@ -445,17 +449,23 @@ var MastraServer = class extends serverAdapter.MastraServer {
|
|
|
445
449
|
};
|
|
446
450
|
}
|
|
447
451
|
getRouteDispatcherGroup(app) {
|
|
448
|
-
const
|
|
449
|
-
|
|
450
|
-
|
|
452
|
+
const middlewareStack = app.middleware;
|
|
453
|
+
const supportsReuse = Array.isArray(middlewareStack);
|
|
454
|
+
if (supportsReuse) {
|
|
455
|
+
const activeGroup = this.activeRouteDispatchers.get(app);
|
|
456
|
+
if (activeGroup && middlewareStack.length === activeGroup.stackLengthAfterRegistration) {
|
|
457
|
+
return activeGroup;
|
|
458
|
+
}
|
|
451
459
|
}
|
|
452
460
|
const group = {
|
|
453
461
|
routes: [],
|
|
454
462
|
stackLengthAfterRegistration: 0
|
|
455
463
|
};
|
|
456
464
|
app.use(this.createRouteDispatcherMiddleware(group));
|
|
457
|
-
|
|
458
|
-
|
|
465
|
+
if (supportsReuse) {
|
|
466
|
+
group.stackLengthAfterRegistration = app.middleware.length;
|
|
467
|
+
this.activeRouteDispatchers.set(app, group);
|
|
468
|
+
}
|
|
459
469
|
return group;
|
|
460
470
|
}
|
|
461
471
|
createRouteDispatcherMiddleware(group) {
|