refactor: make workspace descriptors schema v3 only
This commit is contained in:
@@ -1,5 +1,6 @@
|
||||
import { validateWorkspaceDescriptor } from "./schema.js";
|
||||
import type { DwhTransport, VectorTransport, WorkspaceDescriptor } from "./schema.js";
|
||||
import type { DeprecatedV2Descriptor } from "./deprecated-v2-descriptor.js";
|
||||
|
||||
export type InstallationRole = "DWH" | "VECTOR" | "VECTOR_WRITER" | "EMBEDDING" | "EVIDENCE";
|
||||
export type InstallationSuffix =
|
||||
@@ -145,25 +146,25 @@ function evidenceVariables(
|
||||
export function buildInstallationContract(workspace: WorkspaceDescriptor): InstallationContract {
|
||||
const descriptor = validateWorkspaceDescriptor(workspace);
|
||||
const namespace = namespaceFor(descriptor);
|
||||
const schemaVersion = Number(descriptor.workspace.schema_version);
|
||||
const legacy = descriptor as unknown as DeprecatedV2Descriptor;
|
||||
|
||||
return {
|
||||
workspaceId: descriptor.workspace.id,
|
||||
namespace,
|
||||
variables: [
|
||||
...connectorVariables(namespace, "DWH", descriptor.dwh.supported_transports),
|
||||
...(descriptor.workspace.schema_version === 2
|
||||
...(schemaVersion === 2
|
||||
? connectorVariables(
|
||||
namespace,
|
||||
"VECTOR",
|
||||
"supported_transports" in descriptor.semantic_index.vector_store
|
||||
? descriptor.semantic_index.vector_store.supported_transports
|
||||
: [],
|
||||
legacy.semantic_index.vector_store.supported_transports,
|
||||
)
|
||||
: []),
|
||||
...(descriptor.workspace.schema_version === 2 && descriptor.semantic_index.vector_writer
|
||||
...(schemaVersion === 2 && legacy.semantic_index.vector_writer
|
||||
? [createVariable(namespace, "VECTOR_WRITER", "API_KEY_FILE")]
|
||||
: []),
|
||||
...(descriptor.workspace.schema_version === 2
|
||||
...(schemaVersion === 2
|
||||
? EMBEDDING_SUFFIXES.map((suffix) => createVariable(namespace, "EMBEDDING", suffix))
|
||||
: []),
|
||||
...evidenceVariables(namespace, descriptor),
|
||||
|
||||
Reference in New Issue
Block a user