From 86d09ef59df2f5477b77c1e43f9024e4758d1003 Mon Sep 17 00:00:00 2001 From: Palash Shah Date: Fri, 13 Feb 2026 10:52:14 -0500 Subject: [PATCH 01/13] [draft pr for self-hosted polly] --- charts/langsmith/templates/_helpers.tpl | 14 +++++++++++++ .../agent-bootstrap/bootstrap-job.yaml | 14 +++++++++++++ .../templates/agent-bootstrap/rbac.yaml | 5 ++++- .../templates/frontend/deployment.yaml | 5 +++++ charts/langsmith/templates/secrets.yaml | 1 + charts/langsmith/templates/validate.yaml | 8 ++++++++ charts/langsmith/values.yaml | 20 +++++++++++++++++++ 7 files changed, 66 insertions(+), 1 deletion(-) diff --git a/charts/langsmith/templates/_helpers.tpl b/charts/langsmith/templates/_helpers.tpl index 85a80d11..5742170c 100644 --- a/charts/langsmith/templates/_helpers.tpl +++ b/charts/langsmith/templates/_helpers.tpl @@ -461,6 +461,14 @@ Template containing common environment variables that are used by several servic key: insights_encryption_key optional: false {{- end }} +{{- if .Values.config.polly.enabled }} +- name: POLLY_ENCRYPTION_KEY + valueFrom: + secretKeyRef: + name: {{ include "langsmith.secretsName" . }} + key: polly_encryption_key + optional: false +{{- end }} {{- end }} @@ -601,6 +609,9 @@ Template containing common environment variables that are used by several servic {{- if .Values.config.insights.enabled }} {{- $createProducts = append $createProducts "insights" }} {{- end }} +{{- if .Values.config.polly.enabled }} +{{- $createProducts = append $createProducts "polly" }} +{{- end }} {{ toYaml $createProducts }} {{- end -}} @@ -612,6 +623,9 @@ Template containing common environment variables that are used by several servic {{- if not .Values.config.insights.enabled }} {{- $destroyProducts = append $destroyProducts "insights" }} {{- end }} +{{- if not .Values.config.polly.enabled }} +{{- $destroyProducts = append $destroyProducts "polly" }} +{{- end }} {{ toYaml $destroyProducts }} {{- end -}} diff --git a/charts/langsmith/templates/agent-bootstrap/bootstrap-job.yaml b/charts/langsmith/templates/agent-bootstrap/bootstrap-job.yaml index 27174fdb..d4ef02dc 100644 --- a/charts/langsmith/templates/agent-bootstrap/bootstrap-job.yaml +++ b/charts/langsmith/templates/agent-bootstrap/bootstrap-job.yaml @@ -116,6 +116,20 @@ spec: "memory_limit_mb": {{ .Values.config.insights.agent.resources.memoryLimitMb }}, "min_scale": {{ .Values.config.insights.agent.resources.minScale }}, "max_scale": {{ .Values.config.insights.agent.resources.maxScale }} + }{{- if .Values.config.polly.enabled }},{{- end }} + {{- end }} + {{- if .Values.config.polly.enabled }} + "polly": { + "image": "{{ include "langsmith.image" (dict "Values" .Values "Chart" .Chart "component" "pollyAgentImage") }}", + "configmap_name": "{{ include "langsmith.fullname" . }}-polly-config", + "k8s_namespace": "{{ .Values.namespace | default .Release.Namespace }}", + "restart_deployments": ["{{ include "langsmith.fullname" . }}-{{ .Values.frontend.name }}"], + "cpu": {{ .Values.config.polly.agent.resources.cpu }}, + "cpu_limit": {{ .Values.config.polly.agent.resources.cpuLimit }}, + "memory_mb": {{ .Values.config.polly.agent.resources.memoryMb }}, + "memory_limit_mb": {{ .Values.config.polly.agent.resources.memoryLimitMb }}, + "min_scale": {{ .Values.config.polly.agent.resources.minScale }}, + "max_scale": {{ .Values.config.polly.agent.resources.maxScale }} } {{- end }} } diff --git a/charts/langsmith/templates/agent-bootstrap/rbac.yaml b/charts/langsmith/templates/agent-bootstrap/rbac.yaml index 3d25d726..164a5e57 100644 --- a/charts/langsmith/templates/agent-bootstrap/rbac.yaml +++ b/charts/langsmith/templates/agent-bootstrap/rbac.yaml @@ -20,7 +20,7 @@ automountServiceAccountToken: {{ .Values.backend.agentBootstrap.serviceAccount.a {{- end }} --- # Role + RoleBinding: only when at least one product is enabled (create path patches ConfigMaps and restarts deployments) -{{- if and .Values.backend.agentBootstrap.enabled .Values.config.deployment.enabled (or .Values.config.agentBuilder.enabled .Values.config.insights.enabled) }} +{{- if and .Values.backend.agentBootstrap.enabled .Values.config.deployment.enabled (or .Values.config.agentBuilder.enabled .Values.config.insights.enabled .Values.config.polly.enabled) }} apiVersion: rbac.authorization.k8s.io/v1 kind: Role metadata: @@ -47,6 +47,9 @@ rules: {{- if .Values.config.insights.enabled }} - {{ include "langsmith.fullname" . }}-insights-config {{- end }} + {{- if .Values.config.polly.enabled }} + - {{ include "langsmith.fullname" . }}-polly-config + {{- end }} # Permission to restart deployments after ConfigMap updates - apiGroups: ["apps"] resources: ["deployments"] diff --git a/charts/langsmith/templates/frontend/deployment.yaml b/charts/langsmith/templates/frontend/deployment.yaml index f3b8d4cd..abf4f462 100644 --- a/charts/langsmith/templates/frontend/deployment.yaml +++ b/charts/langsmith/templates/frontend/deployment.yaml @@ -138,6 +138,11 @@ spec: name: {{ include "langsmith.fullname" . }}-agent-builder-config optional: true {{- end }} + {{- if .Values.config.polly.enabled }} + - configMapRef: + name: {{ include "langsmith.fullname" . }}-polly-config + optional: true + {{- end }} image: {{ include "langsmith.image" (dict "Values" .Values "Chart" .Chart "component" "frontendImage") | quote }} imagePullPolicy: {{ .Values.images.frontendImage.pullPolicy }} ports: diff --git a/charts/langsmith/templates/secrets.yaml b/charts/langsmith/templates/secrets.yaml index 0a433e35..5ee886d8 100644 --- a/charts/langsmith/templates/secrets.yaml +++ b/charts/langsmith/templates/secrets.yaml @@ -22,4 +22,5 @@ data: azure_storage_connection_string: {{ .Values.config.blobStorage.azureStorageConnectionString | b64enc | quote }} agent_builder_encryption_key: {{ .Values.config.agentBuilder.encryptionKey | b64enc | quote }} insights_encryption_key: {{ .Values.config.insights.encryptionKey | b64enc | quote }} + polly_encryption_key: {{ .Values.config.polly.encryptionKey | b64enc | quote }} {{- end }} diff --git a/charts/langsmith/templates/validate.yaml b/charts/langsmith/templates/validate.yaml index 908a1822..914defbc 100644 --- a/charts/langsmith/templates/validate.yaml +++ b/charts/langsmith/templates/validate.yaml @@ -195,6 +195,14 @@ AWS Marketplace Helm template verification). {{- fail "config.insights.encryptionKey is required when Insights is enabled. Generate one with: python -c \"from cryptography.fernet import Fernet; print(Fernet.generate_key().decode())\"" -}} {{- end -}} +{{- /* Validate polly configuration */ -}} +{{- if and .Values.config.polly.enabled (not .Values.config.deployment.enabled) -}} +{{- fail "config.deployment.enabled must be true when Polly is enabled. Polly requires LangSmith Deployments." -}} +{{- end -}} +{{- if and .Values.config.polly.enabled (not .Values.config.polly.encryptionKey) (not .Values.config.existingSecretName) -}} +{{- fail "config.polly.encryptionKey is required when Polly is enabled. Generate one with: python -c \"from cryptography.fernet import Fernet; print(Fernet.generate_key().decode())\"" -}} +{{- end -}} + {{- /* Validate autoscaling configuration for all services */ -}} {{- $autoscalingServices := dict "aceBackend" .Values.aceBackend.autoscaling diff --git a/charts/langsmith/values.yaml b/charts/langsmith/values.yaml index f1fe7abc..dce55148 100644 --- a/charts/langsmith/values.yaml +++ b/charts/langsmith/values.yaml @@ -42,6 +42,10 @@ images: repository: "docker.io/langchain/langsmith-clio" pullPolicy: IfNotPresent tag: "0.13.11" + pollyAgentImage: + repository: "docker.io/langchain/langsmith-polly" + pullPolicy: IfNotPresent + tag: "0.13.11" frontendImage: repository: "docker.io/langchain/langsmith-frontend" pullPolicy: IfNotPresent @@ -143,6 +147,22 @@ config: minScale: 1 maxScale: 5 + # Polly configuration - in-app analysis agent + # Requires config.deployment.enabled to be true + polly: + enabled: false + # Fernet encryption key for Polly. Required when enabled. + # Generate with: python -c "from cryptography.fernet import Fernet; print(Fernet.generate_key().decode())" + encryptionKey: "" + agent: + resources: + cpu: 2 + cpuLimit: 4 + memoryMb: 4096 + memoryLimitMb: 8192 + minScale: 1 + maxScale: 5 + # Agent Builder configuration - UI for creating and managing agents # Requires config.deployment.enabled to be true agentBuilder: From 68d3260339403a020ff77f39321557be47e7d517 Mon Sep 17 00:00:00 2001 From: Palash Shah Date: Sun, 15 Feb 2026 17:24:09 -0500 Subject: [PATCH 02/13] u --- charts/langsmith/templates/_helpers.tpl | 4 +- .../agent-bootstrap/bootstrap-job.yaml | 2 +- config.yaml | 248 ++++++++++++++++++ 3 files changed, 251 insertions(+), 3 deletions(-) create mode 100644 config.yaml diff --git a/charts/langsmith/templates/_helpers.tpl b/charts/langsmith/templates/_helpers.tpl index 5742170c..5576b5af 100644 --- a/charts/langsmith/templates/_helpers.tpl +++ b/charts/langsmith/templates/_helpers.tpl @@ -610,7 +610,7 @@ Template containing common environment variables that are used by several servic {{- $createProducts = append $createProducts "insights" }} {{- end }} {{- if .Values.config.polly.enabled }} -{{- $createProducts = append $createProducts "polly" }} +{{- $createProducts = append $createProducts "smith_polly" }} {{- end }} {{ toYaml $createProducts }} {{- end -}} @@ -624,7 +624,7 @@ Template containing common environment variables that are used by several servic {{- $destroyProducts = append $destroyProducts "insights" }} {{- end }} {{- if not .Values.config.polly.enabled }} -{{- $destroyProducts = append $destroyProducts "polly" }} +{{- $destroyProducts = append $destroyProducts "smith_polly" }} {{- end }} {{ toYaml $destroyProducts }} {{- end -}} diff --git a/charts/langsmith/templates/agent-bootstrap/bootstrap-job.yaml b/charts/langsmith/templates/agent-bootstrap/bootstrap-job.yaml index d4ef02dc..1085e3a6 100644 --- a/charts/langsmith/templates/agent-bootstrap/bootstrap-job.yaml +++ b/charts/langsmith/templates/agent-bootstrap/bootstrap-job.yaml @@ -119,7 +119,7 @@ spec: }{{- if .Values.config.polly.enabled }},{{- end }} {{- end }} {{- if .Values.config.polly.enabled }} - "polly": { + "smith-polly": { "image": "{{ include "langsmith.image" (dict "Values" .Values "Chart" .Chart "component" "pollyAgentImage") }}", "configmap_name": "{{ include "langsmith.fullname" . }}-polly-config", "k8s_namespace": "{{ .Values.namespace | default .Release.Namespace }}", diff --git a/config.yaml b/config.yaml new file mode 100644 index 00000000..58b4beee --- /dev/null +++ b/config.yaml @@ -0,0 +1,248 @@ +config: + langsmithLicenseKey: "lcl_8054f23ec9464cfd851257aac715597e_5d1fa0e1d7" # Replace with your actual license key + apiKeySalt: "a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6" + authType: "mixed" + basicAuth: + enabled: true + initialOrgAdminEmail: "admin@example.com" # Replace with your admin email + initialOrgAdminPassword: "ChangeMe123!" # Replace with a secure password + jwtSecret: "x9y8z7w6v5u4t3s2r1q0p9o8n7m6l5k4j3i2h1g0f9e8d7c6b5a4" + deployment: + enabled: true + # Disable external ingress/URL health checks from inside the cluster + ingressHealthCheckEnabled: false + hostname: hari.eks.smith.langchain.dev + agentBuilder: + enabled: true + # Optional: the tenant that will contain the agent builder deployment, will default to the first created tenant when agent builder is bootstrapped + # tenantId: "86b34232-374a-460c-9721-d9bff68cba32" + # The listener that will be associated with the agent builder deployment. You MUST specify this if the tenant is specified and the tenant has listeners + # listenerId: "fe960216-2668-4e6a-85c8-179c5801354f" + # The k8s namespace the agent builder deployment will live in. You MUST specify this if listenerId is specified + # namespace: "hari-hybrid" + encryptionKey: "IXt9OB7eO9zLOFYujArbWyOxTsvrUQvqodwCs3IxzYE=" + insights: + enabled: true + # Optional: the tenant that will contain the agent builder deployment, will default to the first created tenant when agent builder is bootstrapped + # tenantId: "86b34232-374a-460c-9721-d9bff68cba32" + # The listener that will be associated with the agent builder deployment. You MUST specify this if the tenant is specified and the tenant has listeners + # listenerId: "fe960216-2668-4e6a-85c8-179c5801354f" + # The k8s namespace the agent builder deployment will live in. You MUST specify this if listenerId is specified + # namespace: "hari-hybrid-other" + encryptionKey: "IXt9OB7eO9zLOFYujArbWyOxTsvrUQvqodwCs3IxzYE=" + polly: + enabled: true + # Optional: the tenant that will contain the polly deployment, will default to the first created tenant when polly is bootstrapped + # tenantId: "86b34232-374a-460c-9721-d9bff68cba32" + # The listener that will be associated with the polly deployment. You MUST specify this if the tenant is specified and the tenant has listeners + # listenerId: "fe960216-2668-4e6a-85c8-179c5801354f" + # The k8s namespace the polly deployment will live in. You MUST specify this if listenerId is specified + # namespace: "hari-hybrid-other" + encryptionKey: "IXt9OB7eO9zLOFYujArbWyOxTsvrUQvqodwCs3IxzYE=" +gateway: + enabled: true + name: langsmith-gateway + namespace: envoy-gateway-system +ingress: + enabled: false +operator: + enabled: true + createCRDs: false + watchNamespaces: "palash-polly" + templates: + deployment: |- + apiVersion: apps/v1 + kind: Deployment + metadata: + name: ${name} + namespace: ${namespace} + spec: + replicas: ${replicas} + revisionHistoryLimit: 10 + selector: + matchLabels: + app: ${name} + template: + metadata: + labels: + app: ${name} + spec: + enableServiceLinks: false + imagePullSecrets: + - name: regcred + containers: + - name: api-server + image: ${image} + ports: + - name: api-server + containerPort: 8000 + protocol: TCP + livenessProbe: + httpGet: + path: /ok + port: 8000 + periodSeconds: 15 + timeoutSeconds: 5 + failureThreshold: 6 + readinessProbe: + httpGet: + path: /ok + port: 8000 + periodSeconds: 15 + timeoutSeconds: 5 + failureThreshold: 6 + service: |- + apiVersion: v1 + kind: Service + metadata: + name: ${name} + namespace: ${namespace} + spec: + type: ClusterIP + selector: + app: ${name} + ports: + - name: api-server + protocol: TCP + port: 8000 + targetPort: 8000 + redis: |- + apiVersion: apps/v1 + kind: Deployment + metadata: + name: ${service_name} + namespace: ${namespace} + spec: + replicas: 1 + selector: + matchLabels: + app: ${service_name} + template: + metadata: + labels: + app: ${service_name} + spec: + enableServiceLinks: false + imagePullSecrets: + - name: regcred + containers: + - name: redis + image: docker.io/redis:7 + ports: + - containerPort: 6379 + name: redis + livenessProbe: + exec: + command: + - redis-cli + - ping + initialDelaySeconds: 30 + periodSeconds: 10 + readinessProbe: + tcpSocket: + port: 6379 + initialDelaySeconds: 10 + periodSeconds: 5 + db: |- + apiVersion: apps/v1 + kind: StatefulSet + metadata: + name: ${service_name} + spec: + serviceName: ${service_name} + selector: + matchLabels: + app: ${service_name} + persistentVolumeClaimRetentionPolicy: + whenDeleted: Delete + whenScaled: Retain + template: + metadata: + labels: + app: ${service_name} + spec: + enableServiceLinks: false + imagePullSecrets: + - name: regcred + containers: + - name: postgres + image: pgvector/pgvector:pg15 + ports: + - containerPort: 5432 + command: ["docker-entrypoint.sh"] + args: + - postgres + - -c + - max_connections=${max_connections} + env: + - name: PGDATA + value: /var/lib/postgresql/data/pgdata + volumeMounts: + - name: postgres-data + mountPath: /var/lib/postgresql/data + volumeClaimTemplates: + - metadata: + name: postgres-data + spec: + accessModes: ["ReadWriteOnce"] + resources: + requests: + storage: "${storage_gi}Gi" +images: + backendImage: + tag: "0.13.14" + redisImage: + tag: 7 + postgresImage: + tag: 14.7 +# agentBuilderImage: +# pullPolicy: IfNotPresent +# repository: docker.io/langchain/agent-builder-deep-agent-private +# tag: 0.13.8-88bf9db2a0ca38e4402c78fd04a223717da7066f +# agentBuilderToolServerImage: +# pullPolicy: IfNotPresent +# repository: docker.io/langchain/agent-builder-tool-server-private +# tag: 0.13.8-88bf9db2a0ca38e4402c78fd04a223717da7066f +# agentBuilderTriggerServerImage: +# pullPolicy: IfNotPresent +# repository: docker.io/langchain/agent-builder-trigger-server-private +# tag: 0.13.8-88bf9db2a0ca38e4402c78fd04a223717da7066f +# backendImage: +# repository: docker.io/langchain/langsmith-backend-private +# tag: 0.13.8-88bf9db2a0ca38e4402c78fd04a223717da7066f +# frontendImage: +# pullPolicy: IfNotPresent +# repository: docker.io/langchain/langsmith-frontend-private +# tag: 0.13.8-88bf9db2a0ca38e4402c78fd04a223717da7066f +# hostBackendImage: +# repository: docker.io/langchain/hosted-langserve-backend-private +# tag: 0.13.8-88bf9db2a0ca38e4402c78fd04a223717da7066f + imagePullSecrets: + - name: regcred +# insightsAgentImage: +# pullPolicy: IfNotPresent +# repository: docker.io/langchain/langsmith-clio-private +# tag: 0.13.8-88bf9db2a0ca38e4402c78fd04a223717da7066f + pollyAgentImage: + pullPolicy: IfNotPresent + repository: docker.io/langchain/langsmith-polly-private + tag: 0.13.15-0cc1419cc29f0d051cbdb7a334f26cd8adbe2655 +# platformBackendImage: +# repository: docker.io/langchain/langsmith-go-backend-private +# tag: 0.13.8-88bf9db2a0ca38e4402c78fd04a223717da7066f +ingestQueue: + deployment: + replicas: 1 +backend: + clickhouseMigrations: + enabled: true + deployment: + replicas: 1 + migrations: + enabled: true + agentBootstrap: + enabled: true + ttlSecondsAfterFinished: 1800 # 30 min so failed pod stays +platformBackend: + deployment: + replicas: 1 From a5aa4ae3218d9edd4b82a1b8e4434ce4c1470e24 Mon Sep 17 00:00:00 2001 From: Palash Shah Date: Sun, 15 Feb 2026 17:26:45 -0500 Subject: [PATCH 03/13] chore: release 0.13.14 (#586) * chore: release 0.13.12 * updates * updates * updates * updates * updates * updates --- .github/workflows/helm_checks.yaml | 15 ++++++-------- charts/langsmith/Chart.yaml | 4 ++-- charts/langsmith/README.md | 26 ++++++++++++------------ charts/langsmith/values.yaml | 32 +++++++++++++++--------------- 4 files changed, 37 insertions(+), 40 deletions(-) diff --git a/.github/workflows/helm_checks.yaml b/.github/workflows/helm_checks.yaml index 8fafb40e..d875ad54 100644 --- a/.github/workflows/helm_checks.yaml +++ b/.github/workflows/helm_checks.yaml @@ -50,18 +50,15 @@ jobs: run: helm unittest charts/${{ matrix.chart-name }} - name: Create kind cluster - uses: helm/kind-action@v1.7.0 + uses: helm/kind-action@v1.12.0 + with: + version: v0.25.0 - name: Pre-pull and load external images into kind run: | - docker pull docker.io/redis:7 - kind load docker-image docker.io/redis:7 --name chart-testing - - docker pull docker.io/postgres:14.7 - kind load docker-image docker.io/postgres:14.7 --name chart-testing - - docker pull docker.io/clickhouse/clickhouse-server:25.4 - kind load docker-image docker.io/clickhouse/clickhouse-server:25.4 --name chart-testing + docker exec chart-testing-control-plane crictl pull docker.io/redis:7 + docker exec chart-testing-control-plane crictl pull docker.io/postgres:14.7 + docker exec chart-testing-control-plane crictl pull docker.io/clickhouse/clickhouse-server:25.4 - name: Setup Redis with TLS for Custom CA Testing (LangSmith only) if: matrix.chart-name == 'langsmith' diff --git a/charts/langsmith/Chart.yaml b/charts/langsmith/Chart.yaml index b2d29148..c2b0e542 100644 --- a/charts/langsmith/Chart.yaml +++ b/charts/langsmith/Chart.yaml @@ -5,5 +5,5 @@ maintainers: email: ankush@langchain.dev description: Helm chart to deploy the langsmith application and all services it depends on. type: application -version: 0.13.12 -appVersion: "0.13.11" +version: 0.13.13 +appVersion: "0.13.14" diff --git a/charts/langsmith/README.md b/charts/langsmith/README.md index 1b7a2ec6..bdce67a8 100644 --- a/charts/langsmith/README.md +++ b/charts/langsmith/README.md @@ -1,6 +1,6 @@ # langsmith -![Version: 0.13.12](https://img.shields.io/badge/Version-0.13.12-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 0.13.11](https://img.shields.io/badge/AppVersion-0.13.11-informational?style=flat-square) +![Version: 0.13.13](https://img.shields.io/badge/Version-0.13.13-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 0.13.14](https://img.shields.io/badge/AppVersion-0.13.14-informational?style=flat-square) Helm chart to deploy the langsmith application and all services it depends on. @@ -137,47 +137,47 @@ For information on how to use this chart, up-to-date release notes, and other gu | gateway.sectionName | string | `""` | | | images.aceBackendImage.pullPolicy | string | `"IfNotPresent"` | | | images.aceBackendImage.repository | string | `"docker.io/langchain/langsmith-ace-backend"` | | -| images.aceBackendImage.tag | string | `"0.13.11"` | | +| images.aceBackendImage.tag | string | `"0.13.14"` | | | images.agentBuilderImage.pullPolicy | string | `"IfNotPresent"` | | | images.agentBuilderImage.repository | string | `"docker.io/langchain/agent-builder-deep-agent"` | | -| images.agentBuilderImage.tag | string | `"0.13.11"` | | +| images.agentBuilderImage.tag | string | `"0.13.14"` | | | images.agentBuilderToolServerImage.pullPolicy | string | `"IfNotPresent"` | | | images.agentBuilderToolServerImage.repository | string | `"docker.io/langchain/agent-builder-tool-server"` | | -| images.agentBuilderToolServerImage.tag | string | `"0.13.11"` | | +| images.agentBuilderToolServerImage.tag | string | `"0.13.14"` | | | images.agentBuilderTriggerServerImage.pullPolicy | string | `"IfNotPresent"` | | | images.agentBuilderTriggerServerImage.repository | string | `"docker.io/langchain/agent-builder-trigger-server"` | | -| images.agentBuilderTriggerServerImage.tag | string | `"0.13.11"` | | +| images.agentBuilderTriggerServerImage.tag | string | `"0.13.14"` | | | images.backendImage.pullPolicy | string | `"IfNotPresent"` | | | images.backendImage.repository | string | `"docker.io/langchain/langsmith-backend"` | | -| images.backendImage.tag | string | `"0.13.11"` | | +| images.backendImage.tag | string | `"0.13.14"` | | | images.clickhouseImage.pullPolicy | string | `"Always"` | | | images.clickhouseImage.repository | string | `"docker.io/clickhouse/clickhouse-server"` | | | images.clickhouseImage.tag | string | `"25.12"` | | | images.frontendImage.pullPolicy | string | `"IfNotPresent"` | | | images.frontendImage.repository | string | `"docker.io/langchain/langsmith-frontend"` | | -| images.frontendImage.tag | string | `"0.13.11"` | | +| images.frontendImage.tag | string | `"0.13.14"` | | | images.hostBackendImage.pullPolicy | string | `"IfNotPresent"` | | | images.hostBackendImage.repository | string | `"docker.io/langchain/hosted-langserve-backend"` | | -| images.hostBackendImage.tag | string | `"0.13.11"` | | +| images.hostBackendImage.tag | string | `"0.13.14"` | | | images.imagePullSecrets | list | `[]` | Secrets with credentials to pull images from a private registry. Specified as name: value. | | images.insightsAgentImage.pullPolicy | string | `"IfNotPresent"` | | | images.insightsAgentImage.repository | string | `"docker.io/langchain/langsmith-clio"` | | -| images.insightsAgentImage.tag | string | `"0.13.11"` | | +| images.insightsAgentImage.tag | string | `"0.13.14"` | | | images.operatorImage.pullPolicy | string | `"IfNotPresent"` | | | images.operatorImage.repository | string | `"docker.io/langchain/langgraph-operator"` | | | images.operatorImage.tag | string | `"0.1.37"` | | | images.platformBackendImage.pullPolicy | string | `"IfNotPresent"` | | | images.platformBackendImage.repository | string | `"docker.io/langchain/langsmith-go-backend"` | | -| images.platformBackendImage.tag | string | `"0.13.11"` | | +| images.platformBackendImage.tag | string | `"0.13.14"` | | | images.playgroundImage.pullPolicy | string | `"IfNotPresent"` | | | images.playgroundImage.repository | string | `"docker.io/langchain/langsmith-playground"` | | -| images.playgroundImage.tag | string | `"0.13.11"` | | +| images.playgroundImage.tag | string | `"0.13.14"` | | | images.postgresImage.pullPolicy | string | `"IfNotPresent"` | | | images.postgresImage.repository | string | `"docker.io/postgres"` | | -| images.postgresImage.tag | string | `"15.15"` | | +| images.postgresImage.tag | string | `"14.7"` | | | images.redisImage.pullPolicy | string | `"IfNotPresent"` | | | images.redisImage.repository | string | `"docker.io/redis"` | | -| images.redisImage.tag | string | `"8"` | | +| images.redisImage.tag | string | `"7"` | | | images.registry | string | `""` | If supplied, all children .repository values will be prepended with this registry name + `/` | | ingestQueue.autoscaling.hpa.enabled | bool | `false` | | | ingestQueue.autoscaling.hpa.maxReplicas | int | `10` | | diff --git a/charts/langsmith/values.yaml b/charts/langsmith/values.yaml index dce55148..54412385 100644 --- a/charts/langsmith/values.yaml +++ b/charts/langsmith/values.yaml @@ -33,27 +33,23 @@ images: aceBackendImage: repository: "docker.io/langchain/langsmith-ace-backend" pullPolicy: IfNotPresent - tag: "0.13.11" + tag: "0.13.14" backendImage: repository: "docker.io/langchain/langsmith-backend" pullPolicy: IfNotPresent - tag: "0.13.11" + tag: "0.13.14" insightsAgentImage: repository: "docker.io/langchain/langsmith-clio" pullPolicy: IfNotPresent - tag: "0.13.11" - pollyAgentImage: - repository: "docker.io/langchain/langsmith-polly" - pullPolicy: IfNotPresent - tag: "0.13.11" + tag: "0.13.14" frontendImage: repository: "docker.io/langchain/langsmith-frontend" pullPolicy: IfNotPresent - tag: "0.13.11" + tag: "0.13.14" hostBackendImage: repository: "docker.io/langchain/hosted-langserve-backend" pullPolicy: IfNotPresent - tag: "0.13.11" + tag: "0.13.14" operatorImage: repository: "docker.io/langchain/langgraph-operator" pullPolicy: IfNotPresent @@ -61,19 +57,23 @@ images: platformBackendImage: repository: "docker.io/langchain/langsmith-go-backend" pullPolicy: IfNotPresent - tag: "0.13.11" + tag: "0.13.14" playgroundImage: repository: "docker.io/langchain/langsmith-playground" pullPolicy: IfNotPresent - tag: "0.13.11" + tag: "0.13.14" + # For production environments, we strongly recommend connecting to a managed PostgreSQL instance instead of using the one provided by the chart. + # Docs: https://docs.langchain.com/langsmith/self-host-external-postgres postgresImage: repository: "docker.io/postgres" pullPolicy: IfNotPresent - tag: "15.15" + tag: "14.7" + # For production environments, we strongly recommend connecting to a managed Redis instance instead of using the one provided by the chart. + # Docs: https://docs.langchain.com/langsmith/self-host-external-redis redisImage: repository: "docker.io/redis" pullPolicy: IfNotPresent - tag: "8" + tag: "7" clickhouseImage: repository: "docker.io/clickhouse/clickhouse-server" pullPolicy: Always @@ -81,15 +81,15 @@ images: agentBuilderToolServerImage: repository: "docker.io/langchain/agent-builder-tool-server" pullPolicy: IfNotPresent - tag: "0.13.11" + tag: "0.13.14" agentBuilderTriggerServerImage: repository: "docker.io/langchain/agent-builder-trigger-server" pullPolicy: IfNotPresent - tag: "0.13.11" + tag: "0.13.14" agentBuilderImage: repository: "docker.io/langchain/agent-builder-deep-agent" pullPolicy: IfNotPresent - tag: "0.13.11" + tag: "0.13.14" ingress: enabled: false From b4f4bb03583c03385a0b29b4d01bcd7286278eb5 Mon Sep 17 00:00:00 2001 From: Palash Shah Date: Sun, 15 Feb 2026 17:28:15 -0500 Subject: [PATCH 04/13] [draft pr for self-hosted polly] --- charts/langsmith/templates/_helpers.tpl | 4 ++-- charts/langsmith/templates/agent-bootstrap/bootstrap-job.yaml | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/charts/langsmith/templates/_helpers.tpl b/charts/langsmith/templates/_helpers.tpl index 5576b5af..5742170c 100644 --- a/charts/langsmith/templates/_helpers.tpl +++ b/charts/langsmith/templates/_helpers.tpl @@ -610,7 +610,7 @@ Template containing common environment variables that are used by several servic {{- $createProducts = append $createProducts "insights" }} {{- end }} {{- if .Values.config.polly.enabled }} -{{- $createProducts = append $createProducts "smith_polly" }} +{{- $createProducts = append $createProducts "polly" }} {{- end }} {{ toYaml $createProducts }} {{- end -}} @@ -624,7 +624,7 @@ Template containing common environment variables that are used by several servic {{- $destroyProducts = append $destroyProducts "insights" }} {{- end }} {{- if not .Values.config.polly.enabled }} -{{- $destroyProducts = append $destroyProducts "smith_polly" }} +{{- $destroyProducts = append $destroyProducts "polly" }} {{- end }} {{ toYaml $destroyProducts }} {{- end -}} diff --git a/charts/langsmith/templates/agent-bootstrap/bootstrap-job.yaml b/charts/langsmith/templates/agent-bootstrap/bootstrap-job.yaml index 1085e3a6..d4ef02dc 100644 --- a/charts/langsmith/templates/agent-bootstrap/bootstrap-job.yaml +++ b/charts/langsmith/templates/agent-bootstrap/bootstrap-job.yaml @@ -119,7 +119,7 @@ spec: }{{- if .Values.config.polly.enabled }},{{- end }} {{- end }} {{- if .Values.config.polly.enabled }} - "smith-polly": { + "polly": { "image": "{{ include "langsmith.image" (dict "Values" .Values "Chart" .Chart "component" "pollyAgentImage") }}", "configmap_name": "{{ include "langsmith.fullname" . }}-polly-config", "k8s_namespace": "{{ .Values.namespace | default .Release.Namespace }}", From 59104dbab1f849824360a881f4688fde10fc6baa Mon Sep 17 00:00:00 2001 From: Palash Shah Date: Sun, 15 Feb 2026 17:32:57 -0500 Subject: [PATCH 05/13] u --- .github/workflows/helm_checks.yaml | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/.github/workflows/helm_checks.yaml b/.github/workflows/helm_checks.yaml index d875ad54..8fafb40e 100644 --- a/.github/workflows/helm_checks.yaml +++ b/.github/workflows/helm_checks.yaml @@ -50,15 +50,18 @@ jobs: run: helm unittest charts/${{ matrix.chart-name }} - name: Create kind cluster - uses: helm/kind-action@v1.12.0 - with: - version: v0.25.0 + uses: helm/kind-action@v1.7.0 - name: Pre-pull and load external images into kind run: | - docker exec chart-testing-control-plane crictl pull docker.io/redis:7 - docker exec chart-testing-control-plane crictl pull docker.io/postgres:14.7 - docker exec chart-testing-control-plane crictl pull docker.io/clickhouse/clickhouse-server:25.4 + docker pull docker.io/redis:7 + kind load docker-image docker.io/redis:7 --name chart-testing + + docker pull docker.io/postgres:14.7 + kind load docker-image docker.io/postgres:14.7 --name chart-testing + + docker pull docker.io/clickhouse/clickhouse-server:25.4 + kind load docker-image docker.io/clickhouse/clickhouse-server:25.4 --name chart-testing - name: Setup Redis with TLS for Custom CA Testing (LangSmith only) if: matrix.chart-name == 'langsmith' From 6c0c89d62ab59d74182b93e1ad4619d46f1c1000 Mon Sep 17 00:00:00 2001 From: Palash Shah Date: Fri, 20 Feb 2026 16:47:09 -0500 Subject: [PATCH 06/13] u --- charts/langsmith/templates/_helpers.tpl | 4 ++-- charts/langsmith/templates/agent-bootstrap/bootstrap-job.yaml | 2 +- charts/langsmith/templates/config-map.yaml | 3 +++ charts/langsmith/templates/frontend/deployment.yaml | 4 ++++ 4 files changed, 10 insertions(+), 3 deletions(-) diff --git a/charts/langsmith/templates/_helpers.tpl b/charts/langsmith/templates/_helpers.tpl index 5742170c..5576b5af 100644 --- a/charts/langsmith/templates/_helpers.tpl +++ b/charts/langsmith/templates/_helpers.tpl @@ -610,7 +610,7 @@ Template containing common environment variables that are used by several servic {{- $createProducts = append $createProducts "insights" }} {{- end }} {{- if .Values.config.polly.enabled }} -{{- $createProducts = append $createProducts "polly" }} +{{- $createProducts = append $createProducts "smith_polly" }} {{- end }} {{ toYaml $createProducts }} {{- end -}} @@ -624,7 +624,7 @@ Template containing common environment variables that are used by several servic {{- $destroyProducts = append $destroyProducts "insights" }} {{- end }} {{- if not .Values.config.polly.enabled }} -{{- $destroyProducts = append $destroyProducts "polly" }} +{{- $destroyProducts = append $destroyProducts "smith_polly" }} {{- end }} {{ toYaml $destroyProducts }} {{- end -}} diff --git a/charts/langsmith/templates/agent-bootstrap/bootstrap-job.yaml b/charts/langsmith/templates/agent-bootstrap/bootstrap-job.yaml index d4ef02dc..1085e3a6 100644 --- a/charts/langsmith/templates/agent-bootstrap/bootstrap-job.yaml +++ b/charts/langsmith/templates/agent-bootstrap/bootstrap-job.yaml @@ -119,7 +119,7 @@ spec: }{{- if .Values.config.polly.enabled }},{{- end }} {{- end }} {{- if .Values.config.polly.enabled }} - "polly": { + "smith-polly": { "image": "{{ include "langsmith.image" (dict "Values" .Values "Chart" .Chart "component" "pollyAgentImage") }}", "configmap_name": "{{ include "langsmith.fullname" . }}-polly-config", "k8s_namespace": "{{ .Values.namespace | default .Release.Namespace }}", diff --git a/charts/langsmith/templates/config-map.yaml b/charts/langsmith/templates/config-map.yaml index 1fc79a88..9aa49bf3 100644 --- a/charts/langsmith/templates/config-map.yaml +++ b/charts/langsmith/templates/config-map.yaml @@ -62,6 +62,9 @@ data: FF_USE_PG_FOR_FEEDBACK_CONFIGS_FETCH_ENABLED_ALL: "true" FF_USE_PG_FOR_FEEDBACK_FETCH_ENABLED_ALL: "true" IS_SELF_HOSTED: "true" + {{- if .Values.config.polly.enabled }} + SELF_HOSTED_POLLY_ENABLED: "true" + {{- end }} # Security - CORS configuration {{- if .Values.config.security.cors.allowedOriginsRegex }} CORS_ALLOWED_ORIGINS_REGEX: {{ .Values.config.security.cors.allowedOriginsRegex | quote }} diff --git a/charts/langsmith/templates/frontend/deployment.yaml b/charts/langsmith/templates/frontend/deployment.yaml index abf4f462..c5cd3b59 100644 --- a/charts/langsmith/templates/frontend/deployment.yaml +++ b/charts/langsmith/templates/frontend/deployment.yaml @@ -3,6 +3,10 @@ - name: VITE_SELF_HOSTED_CLIO_ENABLED value: {{ .enabled | quote }} {{- end }} +{{- with .Values.config.polly }} +- name: VITE_SELF_HOSTED_POLLY_ENABLED + value: {{ .enabled | quote }} +{{- end }} {{- /* Agent Builder OAuth provider IDs for frontend */ -}} {{- if .Values.config.agentBuilder.oauth.googleOAuthProvider }} - name: VITE_GOOGLE_OAUTH_PROVIDER From b74de58ceb9a51134ca4c22649d011d767f90f8c Mon Sep 17 00:00:00 2001 From: Palash Shah Date: Fri, 20 Feb 2026 21:05:48 -0500 Subject: [PATCH 07/13] u --- charts/langsmith/Chart.yaml | 4 +- config.yaml | 248 ------------------------------------ 2 files changed, 2 insertions(+), 250 deletions(-) delete mode 100644 config.yaml diff --git a/charts/langsmith/Chart.yaml b/charts/langsmith/Chart.yaml index c2b0e542..b2d29148 100644 --- a/charts/langsmith/Chart.yaml +++ b/charts/langsmith/Chart.yaml @@ -5,5 +5,5 @@ maintainers: email: ankush@langchain.dev description: Helm chart to deploy the langsmith application and all services it depends on. type: application -version: 0.13.13 -appVersion: "0.13.14" +version: 0.13.12 +appVersion: "0.13.11" diff --git a/config.yaml b/config.yaml deleted file mode 100644 index 58b4beee..00000000 --- a/config.yaml +++ /dev/null @@ -1,248 +0,0 @@ -config: - langsmithLicenseKey: "lcl_8054f23ec9464cfd851257aac715597e_5d1fa0e1d7" # Replace with your actual license key - apiKeySalt: "a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6" - authType: "mixed" - basicAuth: - enabled: true - initialOrgAdminEmail: "admin@example.com" # Replace with your admin email - initialOrgAdminPassword: "ChangeMe123!" # Replace with a secure password - jwtSecret: "x9y8z7w6v5u4t3s2r1q0p9o8n7m6l5k4j3i2h1g0f9e8d7c6b5a4" - deployment: - enabled: true - # Disable external ingress/URL health checks from inside the cluster - ingressHealthCheckEnabled: false - hostname: hari.eks.smith.langchain.dev - agentBuilder: - enabled: true - # Optional: the tenant that will contain the agent builder deployment, will default to the first created tenant when agent builder is bootstrapped - # tenantId: "86b34232-374a-460c-9721-d9bff68cba32" - # The listener that will be associated with the agent builder deployment. You MUST specify this if the tenant is specified and the tenant has listeners - # listenerId: "fe960216-2668-4e6a-85c8-179c5801354f" - # The k8s namespace the agent builder deployment will live in. You MUST specify this if listenerId is specified - # namespace: "hari-hybrid" - encryptionKey: "IXt9OB7eO9zLOFYujArbWyOxTsvrUQvqodwCs3IxzYE=" - insights: - enabled: true - # Optional: the tenant that will contain the agent builder deployment, will default to the first created tenant when agent builder is bootstrapped - # tenantId: "86b34232-374a-460c-9721-d9bff68cba32" - # The listener that will be associated with the agent builder deployment. You MUST specify this if the tenant is specified and the tenant has listeners - # listenerId: "fe960216-2668-4e6a-85c8-179c5801354f" - # The k8s namespace the agent builder deployment will live in. You MUST specify this if listenerId is specified - # namespace: "hari-hybrid-other" - encryptionKey: "IXt9OB7eO9zLOFYujArbWyOxTsvrUQvqodwCs3IxzYE=" - polly: - enabled: true - # Optional: the tenant that will contain the polly deployment, will default to the first created tenant when polly is bootstrapped - # tenantId: "86b34232-374a-460c-9721-d9bff68cba32" - # The listener that will be associated with the polly deployment. You MUST specify this if the tenant is specified and the tenant has listeners - # listenerId: "fe960216-2668-4e6a-85c8-179c5801354f" - # The k8s namespace the polly deployment will live in. You MUST specify this if listenerId is specified - # namespace: "hari-hybrid-other" - encryptionKey: "IXt9OB7eO9zLOFYujArbWyOxTsvrUQvqodwCs3IxzYE=" -gateway: - enabled: true - name: langsmith-gateway - namespace: envoy-gateway-system -ingress: - enabled: false -operator: - enabled: true - createCRDs: false - watchNamespaces: "palash-polly" - templates: - deployment: |- - apiVersion: apps/v1 - kind: Deployment - metadata: - name: ${name} - namespace: ${namespace} - spec: - replicas: ${replicas} - revisionHistoryLimit: 10 - selector: - matchLabels: - app: ${name} - template: - metadata: - labels: - app: ${name} - spec: - enableServiceLinks: false - imagePullSecrets: - - name: regcred - containers: - - name: api-server - image: ${image} - ports: - - name: api-server - containerPort: 8000 - protocol: TCP - livenessProbe: - httpGet: - path: /ok - port: 8000 - periodSeconds: 15 - timeoutSeconds: 5 - failureThreshold: 6 - readinessProbe: - httpGet: - path: /ok - port: 8000 - periodSeconds: 15 - timeoutSeconds: 5 - failureThreshold: 6 - service: |- - apiVersion: v1 - kind: Service - metadata: - name: ${name} - namespace: ${namespace} - spec: - type: ClusterIP - selector: - app: ${name} - ports: - - name: api-server - protocol: TCP - port: 8000 - targetPort: 8000 - redis: |- - apiVersion: apps/v1 - kind: Deployment - metadata: - name: ${service_name} - namespace: ${namespace} - spec: - replicas: 1 - selector: - matchLabels: - app: ${service_name} - template: - metadata: - labels: - app: ${service_name} - spec: - enableServiceLinks: false - imagePullSecrets: - - name: regcred - containers: - - name: redis - image: docker.io/redis:7 - ports: - - containerPort: 6379 - name: redis - livenessProbe: - exec: - command: - - redis-cli - - ping - initialDelaySeconds: 30 - periodSeconds: 10 - readinessProbe: - tcpSocket: - port: 6379 - initialDelaySeconds: 10 - periodSeconds: 5 - db: |- - apiVersion: apps/v1 - kind: StatefulSet - metadata: - name: ${service_name} - spec: - serviceName: ${service_name} - selector: - matchLabels: - app: ${service_name} - persistentVolumeClaimRetentionPolicy: - whenDeleted: Delete - whenScaled: Retain - template: - metadata: - labels: - app: ${service_name} - spec: - enableServiceLinks: false - imagePullSecrets: - - name: regcred - containers: - - name: postgres - image: pgvector/pgvector:pg15 - ports: - - containerPort: 5432 - command: ["docker-entrypoint.sh"] - args: - - postgres - - -c - - max_connections=${max_connections} - env: - - name: PGDATA - value: /var/lib/postgresql/data/pgdata - volumeMounts: - - name: postgres-data - mountPath: /var/lib/postgresql/data - volumeClaimTemplates: - - metadata: - name: postgres-data - spec: - accessModes: ["ReadWriteOnce"] - resources: - requests: - storage: "${storage_gi}Gi" -images: - backendImage: - tag: "0.13.14" - redisImage: - tag: 7 - postgresImage: - tag: 14.7 -# agentBuilderImage: -# pullPolicy: IfNotPresent -# repository: docker.io/langchain/agent-builder-deep-agent-private -# tag: 0.13.8-88bf9db2a0ca38e4402c78fd04a223717da7066f -# agentBuilderToolServerImage: -# pullPolicy: IfNotPresent -# repository: docker.io/langchain/agent-builder-tool-server-private -# tag: 0.13.8-88bf9db2a0ca38e4402c78fd04a223717da7066f -# agentBuilderTriggerServerImage: -# pullPolicy: IfNotPresent -# repository: docker.io/langchain/agent-builder-trigger-server-private -# tag: 0.13.8-88bf9db2a0ca38e4402c78fd04a223717da7066f -# backendImage: -# repository: docker.io/langchain/langsmith-backend-private -# tag: 0.13.8-88bf9db2a0ca38e4402c78fd04a223717da7066f -# frontendImage: -# pullPolicy: IfNotPresent -# repository: docker.io/langchain/langsmith-frontend-private -# tag: 0.13.8-88bf9db2a0ca38e4402c78fd04a223717da7066f -# hostBackendImage: -# repository: docker.io/langchain/hosted-langserve-backend-private -# tag: 0.13.8-88bf9db2a0ca38e4402c78fd04a223717da7066f - imagePullSecrets: - - name: regcred -# insightsAgentImage: -# pullPolicy: IfNotPresent -# repository: docker.io/langchain/langsmith-clio-private -# tag: 0.13.8-88bf9db2a0ca38e4402c78fd04a223717da7066f - pollyAgentImage: - pullPolicy: IfNotPresent - repository: docker.io/langchain/langsmith-polly-private - tag: 0.13.15-0cc1419cc29f0d051cbdb7a334f26cd8adbe2655 -# platformBackendImage: -# repository: docker.io/langchain/langsmith-go-backend-private -# tag: 0.13.8-88bf9db2a0ca38e4402c78fd04a223717da7066f -ingestQueue: - deployment: - replicas: 1 -backend: - clickhouseMigrations: - enabled: true - deployment: - replicas: 1 - migrations: - enabled: true - agentBootstrap: - enabled: true - ttlSecondsAfterFinished: 1800 # 30 min so failed pod stays -platformBackend: - deployment: - replicas: 1 From d011edb7ee7a34e7d782fad3d6353392f6ba7b70 Mon Sep 17 00:00:00 2001 From: Palash Shah Date: Fri, 20 Feb 2026 21:08:57 -0500 Subject: [PATCH 08/13] u --- charts/langsmith/README.md | 22 +-- charts/langsmith/values.yaml | 30 ++-- config.yaml | 259 +++++++++++++++++++++++++++++++++++ 3 files changed, 282 insertions(+), 29 deletions(-) create mode 100644 config.yaml diff --git a/charts/langsmith/README.md b/charts/langsmith/README.md index bdce67a8..d7a50b0e 100644 --- a/charts/langsmith/README.md +++ b/charts/langsmith/README.md @@ -1,6 +1,6 @@ # langsmith -![Version: 0.13.13](https://img.shields.io/badge/Version-0.13.13-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 0.13.14](https://img.shields.io/badge/AppVersion-0.13.14-informational?style=flat-square) +![Version: 0.13.12](https://img.shields.io/badge/Version-0.13.12-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 0.13.11](https://img.shields.io/badge/AppVersion-0.13.11-informational?style=flat-square) Helm chart to deploy the langsmith application and all services it depends on. @@ -137,41 +137,41 @@ For information on how to use this chart, up-to-date release notes, and other gu | gateway.sectionName | string | `""` | | | images.aceBackendImage.pullPolicy | string | `"IfNotPresent"` | | | images.aceBackendImage.repository | string | `"docker.io/langchain/langsmith-ace-backend"` | | -| images.aceBackendImage.tag | string | `"0.13.14"` | | +| images.aceBackendImage.tag | string | `"0.13.11"` | | | images.agentBuilderImage.pullPolicy | string | `"IfNotPresent"` | | | images.agentBuilderImage.repository | string | `"docker.io/langchain/agent-builder-deep-agent"` | | -| images.agentBuilderImage.tag | string | `"0.13.14"` | | +| images.agentBuilderImage.tag | string | `"0.13.11"` | | | images.agentBuilderToolServerImage.pullPolicy | string | `"IfNotPresent"` | | | images.agentBuilderToolServerImage.repository | string | `"docker.io/langchain/agent-builder-tool-server"` | | -| images.agentBuilderToolServerImage.tag | string | `"0.13.14"` | | +| images.agentBuilderToolServerImage.tag | string | `"0.13.11"` | | | images.agentBuilderTriggerServerImage.pullPolicy | string | `"IfNotPresent"` | | | images.agentBuilderTriggerServerImage.repository | string | `"docker.io/langchain/agent-builder-trigger-server"` | | -| images.agentBuilderTriggerServerImage.tag | string | `"0.13.14"` | | +| images.agentBuilderTriggerServerImage.tag | string | `"0.13.11"` | | | images.backendImage.pullPolicy | string | `"IfNotPresent"` | | | images.backendImage.repository | string | `"docker.io/langchain/langsmith-backend"` | | -| images.backendImage.tag | string | `"0.13.14"` | | +| images.backendImage.tag | string | `"0.13.11"` | | | images.clickhouseImage.pullPolicy | string | `"Always"` | | | images.clickhouseImage.repository | string | `"docker.io/clickhouse/clickhouse-server"` | | | images.clickhouseImage.tag | string | `"25.12"` | | | images.frontendImage.pullPolicy | string | `"IfNotPresent"` | | | images.frontendImage.repository | string | `"docker.io/langchain/langsmith-frontend"` | | -| images.frontendImage.tag | string | `"0.13.14"` | | +| images.frontendImage.tag | string | `"0.13.11"` | | | images.hostBackendImage.pullPolicy | string | `"IfNotPresent"` | | | images.hostBackendImage.repository | string | `"docker.io/langchain/hosted-langserve-backend"` | | -| images.hostBackendImage.tag | string | `"0.13.14"` | | +| images.hostBackendImage.tag | string | `"0.13.11"` | | | images.imagePullSecrets | list | `[]` | Secrets with credentials to pull images from a private registry. Specified as name: value. | | images.insightsAgentImage.pullPolicy | string | `"IfNotPresent"` | | | images.insightsAgentImage.repository | string | `"docker.io/langchain/langsmith-clio"` | | -| images.insightsAgentImage.tag | string | `"0.13.14"` | | +| images.insightsAgentImage.tag | string | `"0.13.11"` | | | images.operatorImage.pullPolicy | string | `"IfNotPresent"` | | | images.operatorImage.repository | string | `"docker.io/langchain/langgraph-operator"` | | | images.operatorImage.tag | string | `"0.1.37"` | | | images.platformBackendImage.pullPolicy | string | `"IfNotPresent"` | | | images.platformBackendImage.repository | string | `"docker.io/langchain/langsmith-go-backend"` | | -| images.platformBackendImage.tag | string | `"0.13.14"` | | +| images.platformBackendImage.tag | string | `"0.13.11"` | | | images.playgroundImage.pullPolicy | string | `"IfNotPresent"` | | | images.playgroundImage.repository | string | `"docker.io/langchain/langsmith-playground"` | | -| images.playgroundImage.tag | string | `"0.13.14"` | | +| images.playgroundImage.tag | string | `"0.13.11"` | | | images.postgresImage.pullPolicy | string | `"IfNotPresent"` | | | images.postgresImage.repository | string | `"docker.io/postgres"` | | | images.postgresImage.tag | string | `"14.7"` | | diff --git a/charts/langsmith/values.yaml b/charts/langsmith/values.yaml index 54412385..1cd4bbb0 100644 --- a/charts/langsmith/values.yaml +++ b/charts/langsmith/values.yaml @@ -33,23 +33,23 @@ images: aceBackendImage: repository: "docker.io/langchain/langsmith-ace-backend" pullPolicy: IfNotPresent - tag: "0.13.14" + tag: "0.13.11" backendImage: repository: "docker.io/langchain/langsmith-backend" pullPolicy: IfNotPresent - tag: "0.13.14" + tag: "0.13.11" insightsAgentImage: repository: "docker.io/langchain/langsmith-clio" pullPolicy: IfNotPresent - tag: "0.13.14" + tag: "0.13.11" frontendImage: repository: "docker.io/langchain/langsmith-frontend" pullPolicy: IfNotPresent - tag: "0.13.14" + tag: "0.13.11" hostBackendImage: repository: "docker.io/langchain/hosted-langserve-backend" pullPolicy: IfNotPresent - tag: "0.13.14" + tag: "0.13.11" operatorImage: repository: "docker.io/langchain/langgraph-operator" pullPolicy: IfNotPresent @@ -57,23 +57,19 @@ images: platformBackendImage: repository: "docker.io/langchain/langsmith-go-backend" pullPolicy: IfNotPresent - tag: "0.13.14" + tag: "0.13.11" playgroundImage: repository: "docker.io/langchain/langsmith-playground" pullPolicy: IfNotPresent - tag: "0.13.14" - # For production environments, we strongly recommend connecting to a managed PostgreSQL instance instead of using the one provided by the chart. - # Docs: https://docs.langchain.com/langsmith/self-host-external-postgres + tag: "0.13.11" postgresImage: repository: "docker.io/postgres" pullPolicy: IfNotPresent - tag: "14.7" - # For production environments, we strongly recommend connecting to a managed Redis instance instead of using the one provided by the chart. - # Docs: https://docs.langchain.com/langsmith/self-host-external-redis + tag: "15.5" redisImage: repository: "docker.io/redis" pullPolicy: IfNotPresent - tag: "7" + tag: "8" clickhouseImage: repository: "docker.io/clickhouse/clickhouse-server" pullPolicy: Always @@ -81,15 +77,15 @@ images: agentBuilderToolServerImage: repository: "docker.io/langchain/agent-builder-tool-server" pullPolicy: IfNotPresent - tag: "0.13.14" + tag: "0.13.11" agentBuilderTriggerServerImage: repository: "docker.io/langchain/agent-builder-trigger-server" pullPolicy: IfNotPresent - tag: "0.13.14" + tag: "0.13.11" agentBuilderImage: repository: "docker.io/langchain/agent-builder-deep-agent" pullPolicy: IfNotPresent - tag: "0.13.14" + tag: "0.13.11" ingress: enabled: false @@ -151,8 +147,6 @@ config: # Requires config.deployment.enabled to be true polly: enabled: false - # Fernet encryption key for Polly. Required when enabled. - # Generate with: python -c "from cryptography.fernet import Fernet; print(Fernet.generate_key().decode())" encryptionKey: "" agent: resources: diff --git a/config.yaml b/config.yaml new file mode 100644 index 00000000..74066960 --- /dev/null +++ b/config.yaml @@ -0,0 +1,259 @@ +config: + langsmithLicenseKey: "lcl_8054f23ec9464cfd851257aac715597e_5d1fa0e1d7" # Replace with your actual license key + apiKeySalt: "a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6" + authType: "mixed" + logLevel: "debug" # Enable debug logging for platform-backend (and other services) + basicAuth: + enabled: true + initialOrgAdminEmail: "admin@example.com" # Replace with your admin email + initialOrgAdminPassword: "ChangeMe123!" # Replace with a secure password + jwtSecret: "x9y8z7w6v5u4t3s2r1q0p9o8n7m6l5k4j3i2h1g0f9e8d7c6b5a4" + deployment: + enabled: true + # Disable external ingress/URL health checks from inside the cluster + ingressHealthCheckEnabled: false + hostname: hari.eks.smith.langchain.dev + agentBuilder: + enabled: true + # Optional: the tenant that will contain the agent builder deployment, will default to the first created tenant when agent builder is bootstrapped + # tenantId: "86b34232-374a-460c-9721-d9bff68cba32" + # The listener that will be associated with the agent builder deployment. You MUST specify this if the tenant is specified and the tenant has listeners + # listenerId: "fe960216-2668-4e6a-85c8-179c5801354f" + # The k8s namespace the agent builder deployment will live in. You MUST specify this if listenerId is specified + # namespace: "hari-hybrid" + encryptionKey: "IXt9OB7eO9zLOFYujArbWyOxTsvrUQvqodwCs3IxzYE=" + insights: + enabled: true + # Optional: the tenant that will contain the agent builder deployment, will default to the first created tenant when agent builder is bootstrapped + # tenantId: "86b34232-374a-460c-9721-d9bff68cba32" + # The listener that will be associated with the agent builder deployment. You MUST specify this if the tenant is specified and the tenant has listeners + # listenerId: "fe960216-2668-4e6a-85c8-179c5801354f" + # The k8s namespace the agent builder deployment will live in. You MUST specify this if listenerId is specified + # namespace: "hari-hybrid-other" + encryptionKey: "IXt9OB7eO9zLOFYujArbWyOxTsvrUQvqodwCs3IxzYE=" + polly: + enabled: true + encryptionKey: "IXt9OB7eO9zLOFYujArbWyOxTsvrUQvqodwCs3IxzYE=" +gateway: + enabled: true + name: langsmith-gateway + namespace: envoy-gateway-system +ingress: + enabled: false +operator: + enabled: true + createCRDs: false + watchNamespaces: "palash-polly" + templates: + deployment: |- + apiVersion: apps/v1 + kind: Deployment + metadata: + name: ${name} + namespace: ${namespace} + spec: + replicas: ${replicas} + revisionHistoryLimit: 10 + selector: + matchLabels: + app: ${name} + template: + metadata: + labels: + app: ${name} + spec: + enableServiceLinks: false + imagePullSecrets: + - name: regcred + containers: + - name: api-server + image: ${image} + ports: + - name: api-server + containerPort: 8000 + protocol: TCP + livenessProbe: + httpGet: + path: /ok + port: 8000 + periodSeconds: 15 + timeoutSeconds: 5 + failureThreshold: 6 + readinessProbe: + httpGet: + path: /ok + port: 8000 + periodSeconds: 15 + timeoutSeconds: 5 + failureThreshold: 6 + service: |- + apiVersion: v1 + kind: Service + metadata: + name: ${name} + namespace: ${namespace} + spec: + type: ClusterIP + selector: + app: ${name} + ports: + - name: api-server + protocol: TCP + port: 8000 + targetPort: 8000 + redis: |- + apiVersion: apps/v1 + kind: Deployment + metadata: + name: ${service_name} + namespace: ${namespace} + spec: + replicas: 1 + selector: + matchLabels: + app: ${service_name} + template: + metadata: + labels: + app: ${service_name} + spec: + enableServiceLinks: false + imagePullSecrets: + - name: regcred + containers: + - name: redis + image: docker.io/redis:7 + ports: + - containerPort: 6379 + name: redis + livenessProbe: + exec: + command: + - redis-cli + - ping + initialDelaySeconds: 30 + periodSeconds: 10 + readinessProbe: + tcpSocket: + port: 6379 + initialDelaySeconds: 10 + periodSeconds: 5 + db: |- + apiVersion: apps/v1 + kind: StatefulSet + metadata: + name: ${service_name} + spec: + serviceName: ${service_name} + selector: + matchLabels: + app: ${service_name} + persistentVolumeClaimRetentionPolicy: + whenDeleted: Delete + whenScaled: Retain + template: + metadata: + labels: + app: ${service_name} + spec: + enableServiceLinks: false + imagePullSecrets: + - name: regcred + containers: + - name: postgres + image: pgvector/pgvector:pg15 + ports: + - containerPort: 5432 + command: ["docker-entrypoint.sh"] + args: + - postgres + - -c + - max_connections=${max_connections} + env: + - name: PGDATA + value: /var/lib/postgresql/data/pgdata + volumeMounts: + - name: postgres-data + mountPath: /var/lib/postgresql/data + volumeClaimTemplates: + - metadata: + name: postgres-data + spec: + accessModes: ["ReadWriteOnce"] + resources: + requests: + storage: "${storage_gi}Gi" +images: + backendImage: + repository: docker.io/langchain/langsmith-backend-private + tag: "0.13.15-58e61870b536c2fa1bd8821ff3b70d4d56241384" + redisImage: + tag: 7 + postgresImage: + tag: 14.7 + frontendImage: + repository: docker.io/langchain/langsmith-frontend-private + tag: "0.13.15-58e61870b536c2fa1bd8821ff3b70d4d56241384" + platformBackendImage: + repository: docker.io/langchain/langsmith-go-backend-private + tag: "0.13.15-58e61870b536c2fa1bd8821ff3b70d4d56241384" + aceBackendImage: + repository: docker.io/langchain/langsmith-ace-backend-private + tag: "0.13.15-58e61870b536c2fa1bd8821ff3b70d4d56241384" + insightsAgentImage: + repository: docker.io/langchain/langsmith-clio-private + tag: "0.13.15-58e61870b536c2fa1bd8821ff3b70d4d56241384" + playgroundImage: + repository: docker.io/langchain/langsmith-playground-python-private + tag: "0.13.15-58e61870b536c2fa1bd8821ff3b70d4d56241384" + # agentBuilderImage: +# pullPolicy: IfNotPresent +# repository: docker.io/langchain/agent-builder-deep-agent-private +# tag: 0.13.8-88bf9db2a0ca38e4402c78fd04a223717da7066f +# agentBuilderToolServerImage: +# pullPolicy: IfNotPresent +# repository: docker.io/langchain/agent-builder-tool-server-private +# tag: 0.13.8-88bf9db2a0ca38e4402c78fd04a223717da7066f +# agentBuilderTriggerServerImage: +# pullPolicy: IfNotPresent +# repository: docker.io/langchain/agent-builder-trigger-server-private +# tag: 0.13.8-88bf9db2a0ca38e4402c78fd04a223717da7066f +# backendImage: +# repository: docker.io/langchain/langsmith-backend-private +# tag: 0.13.8-88bf9db2a0ca38e4402c78fd04a223717da7066f +# frontendImage: +# pullPolicy: IfNotPresent +# repository: docker.io/langchain/langsmith-frontend-private +# tag: 0.13.8-88bf9db2a0ca38e4402c78fd04a223717da7066f +# hostBackendImage: +# repository: docker.io/langchain/hosted-langserve-backend-private +# tag: 0.13.8-88bf9db2a0ca38e4402c78fd04a223717da7066f + imagePullSecrets: + - name: regcred +# insightsAgentImage: +# pullPolicy: IfNotPresent +# repository: docker.io/langchain/langsmith-clio-private +# tag: 0.13.8-88bf9db2a0ca38e4402c78fd04a223717da7066f + pollyAgentImage: + repository: docker.io/langchain/langsmith-polly-private + tag: 0.13.15-58e61870b536c2fa1bd8821ff3b70d4d56241384 +# platformBackendImage: +# repository: docker.io/langchain/langsmith-go-backend-private +# tag: 0.13.8-88bf9db2a0ca38e4402c78fd04a223717da7066f +ingestQueue: + deployment: + replicas: 1 +backend: + clickhouseMigrations: + enabled: true + deployment: + replicas: 1 + migrations: + enabled: true + agentBootstrap: + enabled: true + ttlSecondsAfterFinished: 1800 # 30 min so failed pod stays +platformBackend: + deployment: + replicas: 1 + From 586e306112dd5465a774a5b5d55ea511b8af9ca6 Mon Sep 17 00:00:00 2001 From: Palash Shah Date: Fri, 20 Feb 2026 21:09:28 -0500 Subject: [PATCH 09/13] u --- charts/langsmith/README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/charts/langsmith/README.md b/charts/langsmith/README.md index d7a50b0e..1b7a2ec6 100644 --- a/charts/langsmith/README.md +++ b/charts/langsmith/README.md @@ -174,10 +174,10 @@ For information on how to use this chart, up-to-date release notes, and other gu | images.playgroundImage.tag | string | `"0.13.11"` | | | images.postgresImage.pullPolicy | string | `"IfNotPresent"` | | | images.postgresImage.repository | string | `"docker.io/postgres"` | | -| images.postgresImage.tag | string | `"14.7"` | | +| images.postgresImage.tag | string | `"15.15"` | | | images.redisImage.pullPolicy | string | `"IfNotPresent"` | | | images.redisImage.repository | string | `"docker.io/redis"` | | -| images.redisImage.tag | string | `"7"` | | +| images.redisImage.tag | string | `"8"` | | | images.registry | string | `""` | If supplied, all children .repository values will be prepended with this registry name + `/` | | ingestQueue.autoscaling.hpa.enabled | bool | `false` | | | ingestQueue.autoscaling.hpa.maxReplicas | int | `10` | | From af517aa20de4c889e620e4536abe874c40b0ef41 Mon Sep 17 00:00:00 2001 From: Palash Shah Date: Fri, 20 Feb 2026 21:09:58 -0500 Subject: [PATCH 10/13] u --- charts/langsmith/values.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/charts/langsmith/values.yaml b/charts/langsmith/values.yaml index 1cd4bbb0..59663701 100644 --- a/charts/langsmith/values.yaml +++ b/charts/langsmith/values.yaml @@ -65,7 +65,7 @@ images: postgresImage: repository: "docker.io/postgres" pullPolicy: IfNotPresent - tag: "15.5" + tag: "15.15" redisImage: repository: "docker.io/redis" pullPolicy: IfNotPresent From df94aa62b024520a74e4a11316d0b65355e5a387 Mon Sep 17 00:00:00 2001 From: Palash Shah Date: Fri, 20 Feb 2026 21:10:15 -0500 Subject: [PATCH 11/13] u --- config.yaml | 259 ---------------------------------------------------- 1 file changed, 259 deletions(-) delete mode 100644 config.yaml diff --git a/config.yaml b/config.yaml deleted file mode 100644 index 74066960..00000000 --- a/config.yaml +++ /dev/null @@ -1,259 +0,0 @@ -config: - langsmithLicenseKey: "lcl_8054f23ec9464cfd851257aac715597e_5d1fa0e1d7" # Replace with your actual license key - apiKeySalt: "a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6" - authType: "mixed" - logLevel: "debug" # Enable debug logging for platform-backend (and other services) - basicAuth: - enabled: true - initialOrgAdminEmail: "admin@example.com" # Replace with your admin email - initialOrgAdminPassword: "ChangeMe123!" # Replace with a secure password - jwtSecret: "x9y8z7w6v5u4t3s2r1q0p9o8n7m6l5k4j3i2h1g0f9e8d7c6b5a4" - deployment: - enabled: true - # Disable external ingress/URL health checks from inside the cluster - ingressHealthCheckEnabled: false - hostname: hari.eks.smith.langchain.dev - agentBuilder: - enabled: true - # Optional: the tenant that will contain the agent builder deployment, will default to the first created tenant when agent builder is bootstrapped - # tenantId: "86b34232-374a-460c-9721-d9bff68cba32" - # The listener that will be associated with the agent builder deployment. You MUST specify this if the tenant is specified and the tenant has listeners - # listenerId: "fe960216-2668-4e6a-85c8-179c5801354f" - # The k8s namespace the agent builder deployment will live in. You MUST specify this if listenerId is specified - # namespace: "hari-hybrid" - encryptionKey: "IXt9OB7eO9zLOFYujArbWyOxTsvrUQvqodwCs3IxzYE=" - insights: - enabled: true - # Optional: the tenant that will contain the agent builder deployment, will default to the first created tenant when agent builder is bootstrapped - # tenantId: "86b34232-374a-460c-9721-d9bff68cba32" - # The listener that will be associated with the agent builder deployment. You MUST specify this if the tenant is specified and the tenant has listeners - # listenerId: "fe960216-2668-4e6a-85c8-179c5801354f" - # The k8s namespace the agent builder deployment will live in. You MUST specify this if listenerId is specified - # namespace: "hari-hybrid-other" - encryptionKey: "IXt9OB7eO9zLOFYujArbWyOxTsvrUQvqodwCs3IxzYE=" - polly: - enabled: true - encryptionKey: "IXt9OB7eO9zLOFYujArbWyOxTsvrUQvqodwCs3IxzYE=" -gateway: - enabled: true - name: langsmith-gateway - namespace: envoy-gateway-system -ingress: - enabled: false -operator: - enabled: true - createCRDs: false - watchNamespaces: "palash-polly" - templates: - deployment: |- - apiVersion: apps/v1 - kind: Deployment - metadata: - name: ${name} - namespace: ${namespace} - spec: - replicas: ${replicas} - revisionHistoryLimit: 10 - selector: - matchLabels: - app: ${name} - template: - metadata: - labels: - app: ${name} - spec: - enableServiceLinks: false - imagePullSecrets: - - name: regcred - containers: - - name: api-server - image: ${image} - ports: - - name: api-server - containerPort: 8000 - protocol: TCP - livenessProbe: - httpGet: - path: /ok - port: 8000 - periodSeconds: 15 - timeoutSeconds: 5 - failureThreshold: 6 - readinessProbe: - httpGet: - path: /ok - port: 8000 - periodSeconds: 15 - timeoutSeconds: 5 - failureThreshold: 6 - service: |- - apiVersion: v1 - kind: Service - metadata: - name: ${name} - namespace: ${namespace} - spec: - type: ClusterIP - selector: - app: ${name} - ports: - - name: api-server - protocol: TCP - port: 8000 - targetPort: 8000 - redis: |- - apiVersion: apps/v1 - kind: Deployment - metadata: - name: ${service_name} - namespace: ${namespace} - spec: - replicas: 1 - selector: - matchLabels: - app: ${service_name} - template: - metadata: - labels: - app: ${service_name} - spec: - enableServiceLinks: false - imagePullSecrets: - - name: regcred - containers: - - name: redis - image: docker.io/redis:7 - ports: - - containerPort: 6379 - name: redis - livenessProbe: - exec: - command: - - redis-cli - - ping - initialDelaySeconds: 30 - periodSeconds: 10 - readinessProbe: - tcpSocket: - port: 6379 - initialDelaySeconds: 10 - periodSeconds: 5 - db: |- - apiVersion: apps/v1 - kind: StatefulSet - metadata: - name: ${service_name} - spec: - serviceName: ${service_name} - selector: - matchLabels: - app: ${service_name} - persistentVolumeClaimRetentionPolicy: - whenDeleted: Delete - whenScaled: Retain - template: - metadata: - labels: - app: ${service_name} - spec: - enableServiceLinks: false - imagePullSecrets: - - name: regcred - containers: - - name: postgres - image: pgvector/pgvector:pg15 - ports: - - containerPort: 5432 - command: ["docker-entrypoint.sh"] - args: - - postgres - - -c - - max_connections=${max_connections} - env: - - name: PGDATA - value: /var/lib/postgresql/data/pgdata - volumeMounts: - - name: postgres-data - mountPath: /var/lib/postgresql/data - volumeClaimTemplates: - - metadata: - name: postgres-data - spec: - accessModes: ["ReadWriteOnce"] - resources: - requests: - storage: "${storage_gi}Gi" -images: - backendImage: - repository: docker.io/langchain/langsmith-backend-private - tag: "0.13.15-58e61870b536c2fa1bd8821ff3b70d4d56241384" - redisImage: - tag: 7 - postgresImage: - tag: 14.7 - frontendImage: - repository: docker.io/langchain/langsmith-frontend-private - tag: "0.13.15-58e61870b536c2fa1bd8821ff3b70d4d56241384" - platformBackendImage: - repository: docker.io/langchain/langsmith-go-backend-private - tag: "0.13.15-58e61870b536c2fa1bd8821ff3b70d4d56241384" - aceBackendImage: - repository: docker.io/langchain/langsmith-ace-backend-private - tag: "0.13.15-58e61870b536c2fa1bd8821ff3b70d4d56241384" - insightsAgentImage: - repository: docker.io/langchain/langsmith-clio-private - tag: "0.13.15-58e61870b536c2fa1bd8821ff3b70d4d56241384" - playgroundImage: - repository: docker.io/langchain/langsmith-playground-python-private - tag: "0.13.15-58e61870b536c2fa1bd8821ff3b70d4d56241384" - # agentBuilderImage: -# pullPolicy: IfNotPresent -# repository: docker.io/langchain/agent-builder-deep-agent-private -# tag: 0.13.8-88bf9db2a0ca38e4402c78fd04a223717da7066f -# agentBuilderToolServerImage: -# pullPolicy: IfNotPresent -# repository: docker.io/langchain/agent-builder-tool-server-private -# tag: 0.13.8-88bf9db2a0ca38e4402c78fd04a223717da7066f -# agentBuilderTriggerServerImage: -# pullPolicy: IfNotPresent -# repository: docker.io/langchain/agent-builder-trigger-server-private -# tag: 0.13.8-88bf9db2a0ca38e4402c78fd04a223717da7066f -# backendImage: -# repository: docker.io/langchain/langsmith-backend-private -# tag: 0.13.8-88bf9db2a0ca38e4402c78fd04a223717da7066f -# frontendImage: -# pullPolicy: IfNotPresent -# repository: docker.io/langchain/langsmith-frontend-private -# tag: 0.13.8-88bf9db2a0ca38e4402c78fd04a223717da7066f -# hostBackendImage: -# repository: docker.io/langchain/hosted-langserve-backend-private -# tag: 0.13.8-88bf9db2a0ca38e4402c78fd04a223717da7066f - imagePullSecrets: - - name: regcred -# insightsAgentImage: -# pullPolicy: IfNotPresent -# repository: docker.io/langchain/langsmith-clio-private -# tag: 0.13.8-88bf9db2a0ca38e4402c78fd04a223717da7066f - pollyAgentImage: - repository: docker.io/langchain/langsmith-polly-private - tag: 0.13.15-58e61870b536c2fa1bd8821ff3b70d4d56241384 -# platformBackendImage: -# repository: docker.io/langchain/langsmith-go-backend-private -# tag: 0.13.8-88bf9db2a0ca38e4402c78fd04a223717da7066f -ingestQueue: - deployment: - replicas: 1 -backend: - clickhouseMigrations: - enabled: true - deployment: - replicas: 1 - migrations: - enabled: true - agentBootstrap: - enabled: true - ttlSecondsAfterFinished: 1800 # 30 min so failed pod stays -platformBackend: - deployment: - replicas: 1 - From 6e3d313c2e10c5c19027392541c31ec0e43b0fb5 Mon Sep 17 00:00:00 2001 From: Palash Shah Date: Mon, 23 Feb 2026 16:16:20 -0500 Subject: [PATCH 12/13] u --- charts/langsmith/values.yaml | 3 +- config.yaml | 259 +++++++++++++++++++++++++++++++++++ 2 files changed, 260 insertions(+), 2 deletions(-) create mode 100644 config.yaml diff --git a/charts/langsmith/values.yaml b/charts/langsmith/values.yaml index 59663701..38baf8fc 100644 --- a/charts/langsmith/values.yaml +++ b/charts/langsmith/values.yaml @@ -143,8 +143,7 @@ config: minScale: 1 maxScale: 5 - # Polly configuration - in-app analysis agent - # Requires config.deployment.enabled to be true + # Polly configuration polly: enabled: false encryptionKey: "" diff --git a/config.yaml b/config.yaml new file mode 100644 index 00000000..ed7c662e --- /dev/null +++ b/config.yaml @@ -0,0 +1,259 @@ +config: + langsmithLicenseKey: "lcl_8054f23ec9464cfd851257aac715597e_5d1fa0e1d7" # Replace with your actual license key + apiKeySalt: "a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6" + authType: "mixed" + logLevel: "debug" # Enable debug logging for platform-backend (and other services) + basicAuth: + enabled: true + initialOrgAdminEmail: "admin@example.com" # Replace with your admin email + initialOrgAdminPassword: "ChangeMe123!" # Replace with a secure password + jwtSecret: "x9y8z7w6v5u4t3s2r1q0p9o8n7m6l5k4j3i2h1g0f9e8d7c6b5a4" + deployment: + enabled: true + # Disable external ingress/URL health checks from inside the cluster + ingressHealthCheckEnabled: false + hostname: hari.eks.smith.langchain.dev + agentBuilder: + enabled: true + # Optional: the tenant that will contain the agent builder deployment, will default to the first created tenant when agent builder is bootstrapped + # tenantId: "86b34232-374a-460c-9721-d9bff68cba32" + # The listener that will be associated with the agent builder deployment. You MUST specify this if the tenant is specified and the tenant has listeners + # listenerId: "fe960216-2668-4e6a-85c8-179c5801354f" + # The k8s namespace the agent builder deployment will live in. You MUST specify this if listenerId is specified + # namespace: "hari-hybrid" + encryptionKey: "IXt9OB7eO9zLOFYujArbWyOxTsvrUQvqodwCs3IxzYE=" + insights: + enabled: true + # Optional: the tenant that will contain the agent builder deployment, will default to the first created tenant when agent builder is bootstrapped + # tenantId: "86b34232-374a-460c-9721-d9bff68cba32" + # The listener that will be associated with the agent builder deployment. You MUST specify this if the tenant is specified and the tenant has listeners + # listenerId: "fe960216-2668-4e6a-85c8-179c5801354f" + # The k8s namespace the agent builder deployment will live in. You MUST specify this if listenerId is specified + # namespace: "hari-hybrid-other" + encryptionKey: "IXt9OB7eO9zLOFYujArbWyOxTsvrUQvqodwCs3IxzYE=" + polly: + enabled: true + encryptionKey: "IXt9OB7eO9zLOFYujArbWyOxTsvrUQvqodwCs3IxzYE=" +gateway: + enabled: true + name: langsmith-gateway + namespace: envoy-gateway-system +ingress: + enabled: false +operator: + enabled: true + createCRDs: false + watchNamespaces: "palash-polly" + templates: + deployment: |- + apiVersion: apps/v1 + kind: Deployment + metadata: + name: ${name} + namespace: ${namespace} + spec: + replicas: ${replicas} + revisionHistoryLimit: 10 + selector: + matchLabels: + app: ${name} + template: + metadata: + labels: + app: ${name} + spec: + enableServiceLinks: false + imagePullSecrets: + - name: regcred + containers: + - name: api-server + image: ${image} + ports: + - name: api-server + containerPort: 8000 + protocol: TCP + livenessProbe: + httpGet: + path: /ok + port: 8000 + periodSeconds: 15 + timeoutSeconds: 5 + failureThreshold: 6 + readinessProbe: + httpGet: + path: /ok + port: 8000 + periodSeconds: 15 + timeoutSeconds: 5 + failureThreshold: 6 + service: |- + apiVersion: v1 + kind: Service + metadata: + name: ${name} + namespace: ${namespace} + spec: + type: ClusterIP + selector: + app: ${name} + ports: + - name: api-server + protocol: TCP + port: 8000 + targetPort: 8000 + redis: |- + apiVersion: apps/v1 + kind: Deployment + metadata: + name: ${service_name} + namespace: ${namespace} + spec: + replicas: 1 + selector: + matchLabels: + app: ${service_name} + template: + metadata: + labels: + app: ${service_name} + spec: + enableServiceLinks: false + imagePullSecrets: + - name: regcred + containers: + - name: redis + image: docker.io/redis:7 + ports: + - containerPort: 6379 + name: redis + livenessProbe: + exec: + command: + - redis-cli + - ping + initialDelaySeconds: 30 + periodSeconds: 10 + readinessProbe: + tcpSocket: + port: 6379 + initialDelaySeconds: 10 + periodSeconds: 5 + db: |- + apiVersion: apps/v1 + kind: StatefulSet + metadata: + name: ${service_name} + spec: + serviceName: ${service_name} + selector: + matchLabels: + app: ${service_name} + persistentVolumeClaimRetentionPolicy: + whenDeleted: Delete + whenScaled: Retain + template: + metadata: + labels: + app: ${service_name} + spec: + enableServiceLinks: false + imagePullSecrets: + - name: regcred + containers: + - name: postgres + image: pgvector/pgvector:pg15 + ports: + - containerPort: 5432 + command: ["docker-entrypoint.sh"] + args: + - postgres + - -c + - max_connections=${max_connections} + env: + - name: PGDATA + value: /var/lib/postgresql/data/pgdata + volumeMounts: + - name: postgres-data + mountPath: /var/lib/postgresql/data + volumeClaimTemplates: + - metadata: + name: postgres-data + spec: + accessModes: ["ReadWriteOnce"] + resources: + requests: + storage: "${storage_gi}Gi" +images: + backendImage: + repository: docker.io/langchain/langsmith-backend-private + tag: "0.13.15-174bae52669aa3a54fbd7be513bb153e2fabf90c" + redisImage: + tag: 7 + postgresImage: + tag: 14.7 + frontendImage: + repository: docker.io/langchain/langsmith-frontend-private + tag: "0.13.15-174bae52669aa3a54fbd7be513bb153e2fabf90c" + platformBackendImage: + repository: docker.io/langchain/langsmith-go-backend-private + tag: "0.13.15-174bae52669aa3a54fbd7be513bb153e2fabf90c" + aceBackendImage: + repository: docker.io/langchain/langsmith-ace-backend-private + tag: "0.13.15-174bae52669aa3a54fbd7be513bb153e2fabf90c" + insightsAgentImage: + repository: docker.io/langchain/langsmith-clio-private + tag: "0.13.15-174bae52669aa3a54fbd7be513bb153e2fabf90c" + playgroundImage: + repository: docker.io/langchain/langsmith-playground-python-private + tag: "0.13.15-174bae52669aa3a54fbd7be513bb153e2fabf90c" + # agentBuilderImage: +# pullPolicy: IfNotPresent +# repository: docker.io/langchain/agent-builder-deep-agent-private +# tag: 0.13.8-88bf9db2a0ca38e4402c78fd04a223717da7066f +# agentBuilderToolServerImage: +# pullPolicy: IfNotPresent +# repository: docker.io/langchain/agent-builder-tool-server-private +# tag: 0.13.8-88bf9db2a0ca38e4402c78fd04a223717da7066f +# agentBuilderTriggerServerImage: +# pullPolicy: IfNotPresent +# repository: docker.io/langchain/agent-builder-trigger-server-private +# tag: 0.13.8-88bf9db2a0ca38e4402c78fd04a223717da7066f +# backendImage: +# repository: docker.io/langchain/langsmith-backend-private +# tag: 0.13.8-88bf9db2a0ca38e4402c78fd04a223717da7066f +# frontendImage: +# pullPolicy: IfNotPresent +# repository: docker.io/langchain/langsmith-frontend-private +# tag: 0.13.8-88bf9db2a0ca38e4402c78fd04a223717da7066f +# hostBackendImage: +# repository: docker.io/langchain/hosted-langserve-backend-private +# tag: 0.13.8-88bf9db2a0ca38e4402c78fd04a223717da7066f + imagePullSecrets: + - name: regcred +# insightsAgentImage: +# pullPolicy: IfNotPresent +# repository: docker.io/langchain/langsmith-clio-private +# tag: 0.13.8-88bf9db2a0ca38e4402c78fd04a223717da7066f + pollyAgentImage: + repository: docker.io/langchain/langsmith-polly-private + tag: 0.13.15-174bae52669aa3a54fbd7be513bb153e2fabf90c +# platformBackendImage: +# repository: docker.io/langchain/langsmith-go-backend-private +# tag: 0.13.8-88bf9db2a0ca38e4402c78fd04a223717da7066f +ingestQueue: + deployment: + replicas: 1 +backend: + clickhouseMigrations: + enabled: true + deployment: + replicas: 1 + migrations: + enabled: true + agentBootstrap: + enabled: true + ttlSecondsAfterFinished: 1800 # 30 min so failed pod stays +platformBackend: + deployment: + replicas: 1 + From 95cf9b45ad31bbbc833ddd2c4bfc92fd2b6bc8fe Mon Sep 17 00:00:00 2001 From: Palash Shah Date: Mon, 23 Feb 2026 16:35:26 -0500 Subject: [PATCH 13/13] u --- config.yaml | 259 ---------------------------------------------------- 1 file changed, 259 deletions(-) delete mode 100644 config.yaml diff --git a/config.yaml b/config.yaml deleted file mode 100644 index ed7c662e..00000000 --- a/config.yaml +++ /dev/null @@ -1,259 +0,0 @@ -config: - langsmithLicenseKey: "lcl_8054f23ec9464cfd851257aac715597e_5d1fa0e1d7" # Replace with your actual license key - apiKeySalt: "a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6" - authType: "mixed" - logLevel: "debug" # Enable debug logging for platform-backend (and other services) - basicAuth: - enabled: true - initialOrgAdminEmail: "admin@example.com" # Replace with your admin email - initialOrgAdminPassword: "ChangeMe123!" # Replace with a secure password - jwtSecret: "x9y8z7w6v5u4t3s2r1q0p9o8n7m6l5k4j3i2h1g0f9e8d7c6b5a4" - deployment: - enabled: true - # Disable external ingress/URL health checks from inside the cluster - ingressHealthCheckEnabled: false - hostname: hari.eks.smith.langchain.dev - agentBuilder: - enabled: true - # Optional: the tenant that will contain the agent builder deployment, will default to the first created tenant when agent builder is bootstrapped - # tenantId: "86b34232-374a-460c-9721-d9bff68cba32" - # The listener that will be associated with the agent builder deployment. You MUST specify this if the tenant is specified and the tenant has listeners - # listenerId: "fe960216-2668-4e6a-85c8-179c5801354f" - # The k8s namespace the agent builder deployment will live in. You MUST specify this if listenerId is specified - # namespace: "hari-hybrid" - encryptionKey: "IXt9OB7eO9zLOFYujArbWyOxTsvrUQvqodwCs3IxzYE=" - insights: - enabled: true - # Optional: the tenant that will contain the agent builder deployment, will default to the first created tenant when agent builder is bootstrapped - # tenantId: "86b34232-374a-460c-9721-d9bff68cba32" - # The listener that will be associated with the agent builder deployment. You MUST specify this if the tenant is specified and the tenant has listeners - # listenerId: "fe960216-2668-4e6a-85c8-179c5801354f" - # The k8s namespace the agent builder deployment will live in. You MUST specify this if listenerId is specified - # namespace: "hari-hybrid-other" - encryptionKey: "IXt9OB7eO9zLOFYujArbWyOxTsvrUQvqodwCs3IxzYE=" - polly: - enabled: true - encryptionKey: "IXt9OB7eO9zLOFYujArbWyOxTsvrUQvqodwCs3IxzYE=" -gateway: - enabled: true - name: langsmith-gateway - namespace: envoy-gateway-system -ingress: - enabled: false -operator: - enabled: true - createCRDs: false - watchNamespaces: "palash-polly" - templates: - deployment: |- - apiVersion: apps/v1 - kind: Deployment - metadata: - name: ${name} - namespace: ${namespace} - spec: - replicas: ${replicas} - revisionHistoryLimit: 10 - selector: - matchLabels: - app: ${name} - template: - metadata: - labels: - app: ${name} - spec: - enableServiceLinks: false - imagePullSecrets: - - name: regcred - containers: - - name: api-server - image: ${image} - ports: - - name: api-server - containerPort: 8000 - protocol: TCP - livenessProbe: - httpGet: - path: /ok - port: 8000 - periodSeconds: 15 - timeoutSeconds: 5 - failureThreshold: 6 - readinessProbe: - httpGet: - path: /ok - port: 8000 - periodSeconds: 15 - timeoutSeconds: 5 - failureThreshold: 6 - service: |- - apiVersion: v1 - kind: Service - metadata: - name: ${name} - namespace: ${namespace} - spec: - type: ClusterIP - selector: - app: ${name} - ports: - - name: api-server - protocol: TCP - port: 8000 - targetPort: 8000 - redis: |- - apiVersion: apps/v1 - kind: Deployment - metadata: - name: ${service_name} - namespace: ${namespace} - spec: - replicas: 1 - selector: - matchLabels: - app: ${service_name} - template: - metadata: - labels: - app: ${service_name} - spec: - enableServiceLinks: false - imagePullSecrets: - - name: regcred - containers: - - name: redis - image: docker.io/redis:7 - ports: - - containerPort: 6379 - name: redis - livenessProbe: - exec: - command: - - redis-cli - - ping - initialDelaySeconds: 30 - periodSeconds: 10 - readinessProbe: - tcpSocket: - port: 6379 - initialDelaySeconds: 10 - periodSeconds: 5 - db: |- - apiVersion: apps/v1 - kind: StatefulSet - metadata: - name: ${service_name} - spec: - serviceName: ${service_name} - selector: - matchLabels: - app: ${service_name} - persistentVolumeClaimRetentionPolicy: - whenDeleted: Delete - whenScaled: Retain - template: - metadata: - labels: - app: ${service_name} - spec: - enableServiceLinks: false - imagePullSecrets: - - name: regcred - containers: - - name: postgres - image: pgvector/pgvector:pg15 - ports: - - containerPort: 5432 - command: ["docker-entrypoint.sh"] - args: - - postgres - - -c - - max_connections=${max_connections} - env: - - name: PGDATA - value: /var/lib/postgresql/data/pgdata - volumeMounts: - - name: postgres-data - mountPath: /var/lib/postgresql/data - volumeClaimTemplates: - - metadata: - name: postgres-data - spec: - accessModes: ["ReadWriteOnce"] - resources: - requests: - storage: "${storage_gi}Gi" -images: - backendImage: - repository: docker.io/langchain/langsmith-backend-private - tag: "0.13.15-174bae52669aa3a54fbd7be513bb153e2fabf90c" - redisImage: - tag: 7 - postgresImage: - tag: 14.7 - frontendImage: - repository: docker.io/langchain/langsmith-frontend-private - tag: "0.13.15-174bae52669aa3a54fbd7be513bb153e2fabf90c" - platformBackendImage: - repository: docker.io/langchain/langsmith-go-backend-private - tag: "0.13.15-174bae52669aa3a54fbd7be513bb153e2fabf90c" - aceBackendImage: - repository: docker.io/langchain/langsmith-ace-backend-private - tag: "0.13.15-174bae52669aa3a54fbd7be513bb153e2fabf90c" - insightsAgentImage: - repository: docker.io/langchain/langsmith-clio-private - tag: "0.13.15-174bae52669aa3a54fbd7be513bb153e2fabf90c" - playgroundImage: - repository: docker.io/langchain/langsmith-playground-python-private - tag: "0.13.15-174bae52669aa3a54fbd7be513bb153e2fabf90c" - # agentBuilderImage: -# pullPolicy: IfNotPresent -# repository: docker.io/langchain/agent-builder-deep-agent-private -# tag: 0.13.8-88bf9db2a0ca38e4402c78fd04a223717da7066f -# agentBuilderToolServerImage: -# pullPolicy: IfNotPresent -# repository: docker.io/langchain/agent-builder-tool-server-private -# tag: 0.13.8-88bf9db2a0ca38e4402c78fd04a223717da7066f -# agentBuilderTriggerServerImage: -# pullPolicy: IfNotPresent -# repository: docker.io/langchain/agent-builder-trigger-server-private -# tag: 0.13.8-88bf9db2a0ca38e4402c78fd04a223717da7066f -# backendImage: -# repository: docker.io/langchain/langsmith-backend-private -# tag: 0.13.8-88bf9db2a0ca38e4402c78fd04a223717da7066f -# frontendImage: -# pullPolicy: IfNotPresent -# repository: docker.io/langchain/langsmith-frontend-private -# tag: 0.13.8-88bf9db2a0ca38e4402c78fd04a223717da7066f -# hostBackendImage: -# repository: docker.io/langchain/hosted-langserve-backend-private -# tag: 0.13.8-88bf9db2a0ca38e4402c78fd04a223717da7066f - imagePullSecrets: - - name: regcred -# insightsAgentImage: -# pullPolicy: IfNotPresent -# repository: docker.io/langchain/langsmith-clio-private -# tag: 0.13.8-88bf9db2a0ca38e4402c78fd04a223717da7066f - pollyAgentImage: - repository: docker.io/langchain/langsmith-polly-private - tag: 0.13.15-174bae52669aa3a54fbd7be513bb153e2fabf90c -# platformBackendImage: -# repository: docker.io/langchain/langsmith-go-backend-private -# tag: 0.13.8-88bf9db2a0ca38e4402c78fd04a223717da7066f -ingestQueue: - deployment: - replicas: 1 -backend: - clickhouseMigrations: - enabled: true - deployment: - replicas: 1 - migrations: - enabled: true - agentBootstrap: - enabled: true - ttlSecondsAfterFinished: 1800 # 30 min so failed pod stays -platformBackend: - deployment: - replicas: 1 -