@mastra/factory 0.24.0-alpha.6 → 0.24.0-alpha.7
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/factory.d.ts.map +1 -1
- package/dist/factory.js +12 -6
- package/dist/factory.js.map +1 -1
- package/dist/routes/config.d.ts +34 -3
- package/dist/routes/config.d.ts.map +1 -1
- package/dist/routes/config.js +65 -37
- package/dist/routes/config.js.map +1 -1
- package/dist/routes/custom-provider-source.d.ts +8 -0
- package/dist/routes/custom-provider-source.d.ts.map +1 -1
- package/dist/routes/custom-provider-source.js +22 -1
- package/dist/routes/custom-provider-source.js.map +1 -1
- package/dist/routes/surface.js +1 -1
- package/dist/routes/work-items.js +2 -2
- package/dist/tools/session-tools.d.ts +13 -1
- package/dist/tools/session-tools.d.ts.map +1 -1
- package/dist/tools/session-tools.js +58 -2
- package/dist/tools/session-tools.js.map +1 -1
- package/dist/tools/work-item-tools.js +1 -1
- package/package.json +6 -6
package/dist/routes/config.d.ts
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import type { AuthStorage } from '@mastra/code-sdk/auth/storage';
|
|
2
2
|
import type { ProviderAccess } from '@mastra/code-sdk/onboarding/packs';
|
|
3
|
+
import { getModelReasoningOptions } from '@mastra/core/llm';
|
|
3
4
|
import type { ApiRoute } from '@mastra/core/server';
|
|
4
5
|
import type { CredentialRecord, LoginSessionKind, ModelCredentialsStorage } from '../storage/domains/credentials/base.js';
|
|
5
|
-
import type { CustomProvidersStorage } from '../storage/domains/custom-providers/base.js';
|
|
6
|
+
import type { CustomProviderRecord, CustomProvidersStorage } from '../storage/domains/custom-providers/base.js';
|
|
6
7
|
import type { MemorySettingsStorage } from '../storage/domains/memory-settings/base.js';
|
|
7
8
|
import type { ModelDefaultsStorage } from '../storage/domains/model-defaults/base.js';
|
|
8
9
|
import type { FactoryProjectsStorage } from '../storage/domains/projects/base.js';
|
|
@@ -67,7 +68,7 @@ export interface OMSession {
|
|
|
67
68
|
};
|
|
68
69
|
}
|
|
69
70
|
/** Minimal controller surface this module needs (model catalog + modes + sessions). */
|
|
70
|
-
interface ModelCatalog {
|
|
71
|
+
export interface ModelCatalog {
|
|
71
72
|
listAvailableModels: () => Promise<Array<{
|
|
72
73
|
id?: string;
|
|
73
74
|
modelName?: string;
|
|
@@ -128,6 +129,37 @@ export declare function buildProviderAccess({ controller, authStorage, tenantCre
|
|
|
128
129
|
tenantCredentials?: CredentialRecord[];
|
|
129
130
|
deploymentProviders?: ReadonlySet<string>;
|
|
130
131
|
}): Promise<ProviderAccess>;
|
|
132
|
+
/** A model the caller can pick or switch to. */
|
|
133
|
+
export interface ModelCatalogEntry {
|
|
134
|
+
id: string;
|
|
135
|
+
provider: string;
|
|
136
|
+
modelName?: string;
|
|
137
|
+
hasApiKey: true;
|
|
138
|
+
reasoningOptions: ReturnType<typeof getModelReasoningOptions> | undefined;
|
|
139
|
+
}
|
|
140
|
+
/**
|
|
141
|
+
* Models usable with the given credentials: built-in models whose provider the
|
|
142
|
+
* credentials reach, then the org's custom provider models. The Settings model
|
|
143
|
+
* picker and `factory_switch_session_model` both use this so they cannot drift.
|
|
144
|
+
*/
|
|
145
|
+
export declare function buildModelCatalog({ controller, authStorage, tenantCredentials, deploymentProviders, listCustomProviders, }: {
|
|
146
|
+
controller: ModelCatalog;
|
|
147
|
+
authStorage?: AuthStorage;
|
|
148
|
+
/** Tenant rows in deployed mode; absent in local mode, where `authStorage` and server keys govern. */
|
|
149
|
+
tenantCredentials?: CredentialRecord[];
|
|
150
|
+
deploymentProviders?: ReadonlySet<string>;
|
|
151
|
+
listCustomProviders?: () => Promise<CustomProviderRecord[]>;
|
|
152
|
+
}): Promise<ModelCatalogEntry[]>;
|
|
153
|
+
/**
|
|
154
|
+
* The tenant credentials a session's model policy allows: the Factory's (org
|
|
155
|
+
* rows) for Factory-scoped sessions, the session owner's for user-scoped ones.
|
|
156
|
+
*/
|
|
157
|
+
export declare function listSessionScopedCredentials({ credentials, orgId, userId, modelScope, }: {
|
|
158
|
+
credentials: Pick<ModelCredentialsStorage, 'listCredentials'>;
|
|
159
|
+
orgId: string;
|
|
160
|
+
userId: string;
|
|
161
|
+
modelScope: 'factory' | 'user';
|
|
162
|
+
}): Promise<CredentialRecord[]>;
|
|
131
163
|
/** Per-user default model context for the current request. */
|
|
132
164
|
export interface ModelDefaultsContext {
|
|
133
165
|
storage: ModelDefaultsStorage;
|
|
@@ -211,5 +243,4 @@ export interface ConfigRoutesDeps extends RouteDependencies {
|
|
|
211
243
|
export declare class ConfigRoutes extends Route<ConfigRoutesDeps> {
|
|
212
244
|
routes(): ApiRoute[];
|
|
213
245
|
}
|
|
214
|
-
export {};
|
|
215
246
|
//# sourceMappingURL=config.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/routes/config.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;AAEjE,OAAO,KAAK,EAAE,cAAc,EAAuB,MAAM,mCAAmC,CAAC;
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/routes/config.ts"],"names":[],"mappings":"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"}
|
package/dist/routes/config.js
CHANGED
|
@@ -198,6 +198,50 @@ async function buildProviderAccess({ controller, authStorage, tenantCredentials,
|
|
|
198
198
|
function canUseModelProvider(access, provider) {
|
|
199
199
|
return Boolean(access[provider]);
|
|
200
200
|
}
|
|
201
|
+
/**
|
|
202
|
+
* Models usable with the given credentials: built-in models whose provider the
|
|
203
|
+
* credentials reach, then the org's custom provider models. The Settings model
|
|
204
|
+
* picker and `factory_switch_session_model` both use this so they cannot drift.
|
|
205
|
+
*/
|
|
206
|
+
async function buildModelCatalog({ controller, authStorage, tenantCredentials, deploymentProviders, listCustomProviders }) {
|
|
207
|
+
const [models, access] = await Promise.all([controller.listAvailableModels(), buildProviderAccess({
|
|
208
|
+
controller,
|
|
209
|
+
authStorage: tenantCredentials ? void 0 : authStorage,
|
|
210
|
+
tenantCredentials,
|
|
211
|
+
deploymentProviders
|
|
212
|
+
})]);
|
|
213
|
+
const catalog = models.flatMap(({ id, provider, modelName }) => typeof id === "string" && canUseModelProvider(access, provider) ? [{
|
|
214
|
+
id,
|
|
215
|
+
provider,
|
|
216
|
+
modelName,
|
|
217
|
+
hasApiKey: true,
|
|
218
|
+
reasoningOptions: getModelReasoningOptions(id)
|
|
219
|
+
}] : []);
|
|
220
|
+
if (listCustomProviders) try {
|
|
221
|
+
const known = new Set(catalog.map((m) => m.id));
|
|
222
|
+
for (const record of await listCustomProviders()) for (const model of record.models) {
|
|
223
|
+
const id = `${record.providerId}/${model}`;
|
|
224
|
+
if (known.has(id)) continue;
|
|
225
|
+
known.add(id);
|
|
226
|
+
catalog.push({
|
|
227
|
+
id,
|
|
228
|
+
provider: record.providerId,
|
|
229
|
+
modelName: model,
|
|
230
|
+
hasApiKey: true,
|
|
231
|
+
reasoningOptions: void 0
|
|
232
|
+
});
|
|
233
|
+
}
|
|
234
|
+
} catch {}
|
|
235
|
+
return catalog.sort((a, b) => a.provider === b.provider ? a.id.localeCompare(b.id) : a.provider.localeCompare(b.provider));
|
|
236
|
+
}
|
|
237
|
+
/**
|
|
238
|
+
* The tenant credentials a session's model policy allows: the Factory's (org
|
|
239
|
+
* rows) for Factory-scoped sessions, the session owner's for user-scoped ones.
|
|
240
|
+
*/
|
|
241
|
+
async function listSessionScopedCredentials({ credentials, orgId, userId, modelScope }) {
|
|
242
|
+
const storageScope = modelScope === "factory" ? "org" : "user";
|
|
243
|
+
return (await credentials.listCredentials(orgId, userId)).filter((record) => record.scope === storageScope);
|
|
244
|
+
}
|
|
201
245
|
/** Resolve the default-model context for a request, or a ready-to-return error response. */
|
|
202
246
|
async function resolveModelDefaultsContext({ c, auth, modelDefaults }) {
|
|
203
247
|
await auth.ensureUser(c);
|
|
@@ -618,8 +662,12 @@ var ConfigRoutes = class extends Route {
|
|
|
618
662
|
if (!policy) return c.json({ error: "unauthorized" }, 401);
|
|
619
663
|
const orgId = policy.tenant.orgId ?? tenantOrgId(tenant);
|
|
620
664
|
const modelScope = policy.tenant.credentialScope ?? "user";
|
|
621
|
-
|
|
622
|
-
|
|
665
|
+
tenantCredentials = await listSessionScopedCredentials({
|
|
666
|
+
credentials: options.modelCredentials,
|
|
667
|
+
orgId,
|
|
668
|
+
userId: policy.tenant.userId,
|
|
669
|
+
modelScope
|
|
670
|
+
});
|
|
623
671
|
let defaultModelId = policy.factoryDefaultModelId ?? null;
|
|
624
672
|
if (modelScope === "user") {
|
|
625
673
|
if (!options.modelDefaults) return c.json({ error: "model_defaults_unavailable" }, 503);
|
|
@@ -649,44 +697,24 @@ var ConfigRoutes = class extends Route {
|
|
|
649
697
|
const credentialScope = project.modelScope === "user" ? "user" : "org";
|
|
650
698
|
tenantCredentials = allTenantCredentials.filter((record) => record.scope === credentialScope);
|
|
651
699
|
}
|
|
652
|
-
const
|
|
700
|
+
const customProviders = options.customProviders;
|
|
701
|
+
const models = await buildModelCatalog({
|
|
653
702
|
controller,
|
|
654
|
-
authStorage
|
|
703
|
+
authStorage,
|
|
655
704
|
tenantCredentials,
|
|
656
|
-
deploymentProviders
|
|
657
|
-
|
|
658
|
-
|
|
659
|
-
|
|
660
|
-
|
|
661
|
-
|
|
662
|
-
|
|
663
|
-
|
|
664
|
-
|
|
665
|
-
|
|
666
|
-
const ctx = await resolveCustomProvidersContext({
|
|
667
|
-
c: loose(c),
|
|
668
|
-
auth,
|
|
669
|
-
customProviders: options.customProviders
|
|
670
|
-
});
|
|
671
|
-
if (!("response" in ctx)) {
|
|
672
|
-
const known = new Set(catalog.map((m) => m.id));
|
|
673
|
-
for (const record of await ctx.storage.list({ orgId: ctx.orgId })) for (const model of record.models) {
|
|
674
|
-
const id = `${record.providerId}/${model}`;
|
|
675
|
-
if (known.has(id)) continue;
|
|
676
|
-
known.add(id);
|
|
677
|
-
catalog.push({
|
|
678
|
-
id,
|
|
679
|
-
provider: record.providerId,
|
|
680
|
-
modelName: model,
|
|
681
|
-
hasApiKey: true,
|
|
682
|
-
reasoningOptions: void 0
|
|
683
|
-
});
|
|
684
|
-
}
|
|
685
|
-
}
|
|
686
|
-
} catch {}
|
|
705
|
+
deploymentProviders,
|
|
706
|
+
listCustomProviders: customProviders ? async () => {
|
|
707
|
+
const ctx = await resolveCustomProvidersContext({
|
|
708
|
+
c: loose(c),
|
|
709
|
+
auth,
|
|
710
|
+
customProviders
|
|
711
|
+
});
|
|
712
|
+
return "response" in ctx ? [] : ctx.storage.list({ orgId: ctx.orgId });
|
|
713
|
+
} : void 0
|
|
714
|
+
});
|
|
687
715
|
return c.json({
|
|
688
716
|
...sessionPolicy,
|
|
689
|
-
models
|
|
717
|
+
models
|
|
690
718
|
});
|
|
691
719
|
} catch (error) {
|
|
692
720
|
return c.json({ error: error instanceof Error ? error.message : String(error) }, 500);
|
|
@@ -1015,6 +1043,6 @@ var ConfigRoutes = class extends Route {
|
|
|
1015
1043
|
}
|
|
1016
1044
|
};
|
|
1017
1045
|
//#endregion
|
|
1018
|
-
export { ConfigRoutes, DEPLOYMENT_MODEL_PROVIDERS, buildProviderAccess, isDeploymentModelProvider, listProviders, resolveDeploymentModelProviders };
|
|
1046
|
+
export { ConfigRoutes, DEPLOYMENT_MODEL_PROVIDERS, buildModelCatalog, buildProviderAccess, isDeploymentModelProvider, listProviders, listSessionScopedCredentials, resolveDeploymentModelProviders };
|
|
1019
1047
|
|
|
1020
1048
|
//# sourceMappingURL=config.js.map
|