chore: settle product naming across app, widget and deployments

One word everywhere: ReplyPier in UI copy, package and image names, the
replypier.site domains (app/api/docs/help), REPLYPIER_* settings and the
--rp-* design tokens.

- public widget API is window.ReplyPier with replypierId / replypierBaseUrl /
  replypierConfig / replypierToken, loader at webclient/replypier.min.js;
  both bundles rebuilt from source
- NOTICE, llms.txt, CONTRIBUTING, HELP_CENTER_INFRA and the demo runtime
  config rewritten; the demo config ships no third-party keys
- migration adds the ReplyPier managed model value to the AI model enum
- local compose project, database, role, volume and Docker network carry the
  same name
This commit is contained in:
WangShen007 committed 2026-10-26 00:57:22 +08:00
1 parent ff0a09f0e5
commit 20fef2b9f3
1156 files changed
+7267 -7148

No files matched your search

+2 -2
View File
@@ -1,9 +1,9 @@
--- ---
name: write-e2e-test name: write-e2e-test
description: Write or change a ChatterMate Playwright end-to-end test (e2e/). Use when adding e2e coverage for a feature, fixing a failing e2e spec, or adding a page object, fixture or fake-LLM script. description: Write or change a ReplyPier Playwright end-to-end test (e2e/). Use when adding e2e coverage for a feature, fixing a failing e2e spec, or adding a page object, fixture or fake-LLM script.
--- ---
# Writing a ChatterMate e2e test # Writing a ReplyPier e2e test
The suite lives in `e2e/`. Read `e2e/AUTHORING.md` first — it is the source of truth for The suite lives in `e2e/`. Read `e2e/AUTHORING.md` first — it is the source of truth for
layout and rules. The essentials: layout and rules. The essentials:
+4 -4
View File
@@ -25,13 +25,13 @@ uploads/
*.csr.crt *.csr.crt
/shopify/ /shopify/
# WordPress plugin source lives in its own repo (chattermate-wordpress-plugin); # WordPress plugin source lives in its own repo (replypier-wordpress-plugin);
# only the built, installable zip is tracked here for manual download. # only the built, installable zip is tracked here for manual download.
/wordpress/* /wordpress/*
!/wordpress/chattermate-chat.zip !/wordpress/replypier-chat.zip
# Firebase service account key (contains sensitive credentials) # Firebase service account key (contains sensitive credentials)
chattermate-13e0a-firebase-adminsdk-7dqo6-57f3de88cb.json *-firebase-adminsdk-*.json
test.db test.db
*.db *.db
@@ -71,7 +71,7 @@ config/
frontend/.env.*.bak* frontend/.env.*.bak*
# Stale loader copies — server.js serves the current build from frontend/public/webclient # Stale loader copies — server.js serves the current build from frontend/public/webclient
chattermate-test/chattermate.min.js replypier-test/replypier.min.js
# Only the :dev webclient build emits a sourcemap, and the committed loader is # Only the :dev webclient build emits a sourcemap, and the committed loader is
# the :prod one, which does not reference it. Keeps a stray dev artifact out. # the :prod one, which does not reference it. Keeps a stray dev artifact out.
+1 -1
View File
@@ -30,7 +30,7 @@
| PostgreSQL 16 + pgvector | `127.0.0.1:15432` | | PostgreSQL 16 + pgvector | `127.0.0.1:15432` |
| Redis | `127.0.0.1:16380` | | Redis | `127.0.0.1:16380` |
Docker context 为 `colima-bytedesk`,Compose 项目名为 `chattermate-local`,数据库卷为 `chattermate-local_postgres_data`。它们是运行配置,不能为整理名称而改动或删除。Colima 虚拟机承载数据库与缓存,不要单独关闭。 Docker context 为 `colima-bytedesk`,Compose 项目名为 `replypier-local`,数据库卷为 `replypier-local_postgres_data`。它们是运行配置,不能为整理名称而改动或删除。Colima 虚拟机承载数据库与缓存,不要单独关闭。
## 配置与数据保护 ## 配置与数据保护
+2 -2
View File
@@ -1,11 +1,11 @@
# Contributing to ChatterMate # Contributing to ReplyPier
Thanks for your interest in contributing! This document explains how to get Thanks for your interest in contributing! This document explains how to get
your changes accepted. your changes accepted.
## License ## License
The ChatterMate open-source core is licensed under the The ReplyPier open-source core is licensed under the
[Apache License 2.0](LICENSE). By contributing, you agree that your [Apache License 2.0](LICENSE). By contributing, you agree that your
contributions will be licensed under Apache-2.0. contributions will be licensed under Apache-2.0.
+2 -2
View File
@@ -22,12 +22,12 @@ RUN npm install
# Build the application, widget, and webclient. Use the :prod webclient build so # Build the application, widget, and webclient. Use the :prod webclient build so
# the shipped loader bakes the production fallback URL (the real backend URL is # the shipped loader bakes the production fallback URL (the real backend URL is
# resolved at runtime via window.chattermateBaseUrl / APP_CONFIG regardless). # resolved at runtime via window.replypierBaseUrl / APP_CONFIG regardless).
RUN npm run build-only && \ RUN npm run build-only && \
npm run build:widgetdocker && \ npm run build:widgetdocker && \
npm run build:webclient:prod && \ npm run build:webclient:prod && \
if [ ! -f dist/index.html ]; then \ if [ ! -f dist/index.html ]; then \
echo "<!DOCTYPE html><html><head><meta charset='utf-8'><title>ChatterMate</title><link rel='icon' href='/favicon.ico'></head><body><div id='app'></div><script type='module' src='/src/main.ts'></script></body></html>" > dist/index.html; \ echo "<!DOCTYPE html><html><head><meta charset='utf-8'><title>ReplyPier</title><link rel='icon' href='/favicon.ico'></head><body><div id='app'></div><script type='module' src='/src/main.ts'></script></body></html>" > dist/index.html; \
fi fi
# Production stage # Production stage
+1 -1
View File
@@ -18,7 +18,7 @@ RUN git clone https://github.com/pgvector/pgvector.git && \
COPY ./backend/scripts/init-vector.sql /docker-entrypoint-initdb.d/ COPY ./backend/scripts/init-vector.sql /docker-entrypoint-initdb.d/
# Set environment variables # Set environment variables
ENV POSTGRES_DB=chattermate ENV POSTGRES_DB=replypier
ENV POSTGRES_USER=postgres ENV POSTGRES_USER=postgres
ENV POSTGRES_PASSWORD=postgres ENV POSTGRES_PASSWORD=postgres
+28 -29
View File
@@ -6,11 +6,10 @@ deploy-time pieces that live **outside** the repo: DNS, TLS and the host
nginx on the production VPS. `frontend/nginx.conf` and the docker-compose nginx on the production VPS. `frontend/nginx.conf` and the docker-compose
files need **no changes**. files need **no changes**.
> **As deployed on the ChatterMate cloud VPS (2026-07-14):** the base domain is > **As deployed on the ReplyPier VPS (2026-07-14):** the base domain is
> **`help.chattermate.chat`** (orgs serve at `{slug}.help.chattermate.chat`), not > **`help.replypier.site`** (orgs serve at `{slug}.help.replypier.site`). DNS is
> the `chattermate.help` this doc originally planned — that domain was never > **Route53**, so the wildcard cert is issued and auto-renewed with the
> registered, and the org only owns `chattermate.chat`. DNS is **Route53**, so the > `dns-route53` plugin.
> wildcard cert is issued and auto-renewed with the `dns-route53` plugin.
> Placeholders (`<VPS_IPV4>`, `<ZONE_ID>`, …) stand in for the live values; the > Placeholders (`<VPS_IPV4>`, `<ZONE_ID>`, …) stand in for the live values; the
> real ones live on the VPS and in ops notes, not in this public repo. > real ones live on the VPS and in ops notes, not in this public repo.
@@ -18,9 +17,9 @@ files need **no changes**.
### DNS (Route53) ### DNS (Route53)
Point a wildcard under the domain you own at the VPS. On the cloud box this is Point a wildcard under the domain you own at the VPS. On the cloud box this is
the `chattermate.chat` hosted zone (`<ZONE_ID>`): the `replypier.site` hosted zone (`<ZONE_ID>`):
- `*.help.chattermate.chat. A <VPS_IPV4>` - `*.help.replypier.site. A <VPS_IPV4>`
- `*.help.chattermate.chat. AAAA <VPS_IPV6>` - `*.help.replypier.site. AAAA <VPS_IPV6>`
One wildcard record covers every org — no per-org DNS. Create them via the API: One wildcard record covers every org — no per-org DNS. Create them via the API:
```bash ```bash
@@ -30,7 +29,7 @@ aws route53 change-resource-record-sets --hosted-zone-id <ZONE_ID> \
Backend env (`backend.env` on the VPS): Backend env (`backend.env` on the VPS):
``` ```
HELP_CENTER_BASE_DOMAIN=help.chattermate.chat HELP_CENTER_BASE_DOMAIN=help.replypier.site
HELP_CENTER_TARGET_IPS=["<VPS_IPV4>"] # JSON array — see gotcha below HELP_CENTER_TARGET_IPS=["<VPS_IPV4>"] # JSON array — see gotcha below
``` ```
> **Gotcha:** `HELP_CENTER_TARGET_IPS` is a `frozenset` setting, so > **Gotcha:** `HELP_CENTER_TARGET_IPS` is a `frozenset` setting, so
@@ -46,11 +45,11 @@ Route53 policy (`route53:ListHostedZones` + `GetChange` on `*`,
(mode 600) on the box. Issue once: (mode 600) on the box. Issue once:
```bash ```bash
docker run --rm \ docker run --rm \
-v ~/chattermate/certbot/conf:/etc/letsencrypt \ -v ~/replypier/certbot/conf:/etc/letsencrypt \
-v ~/.aws:/root/.aws:ro \ -v ~/.aws:/root/.aws:ro \
certbot/dns-route53 certonly --dns-route53 \ certbot/dns-route53 certonly --dns-route53 \
-d '*.help.chattermate.chat' -d 'help.chattermate.chat' \ -d '*.help.replypier.site' -d 'help.replypier.site' \
--cert-name help.chattermate.chat \ --cert-name help.replypier.site \
--non-interactive --agree-tos -m <ops-email> --non-interactive --agree-tos -m <ops-email>
``` ```
@@ -63,7 +62,7 @@ docker compose -f docker-compose.hostinger.yml \
# ...then, if the flag file appeared: rm it && docker compose exec -T nginx nginx -s reload # ...then, if the flag file appeared: rm it && docker compose exec -T nginx nginx -s reload
``` ```
It uses the `certbot/dns-route53` image and mounts It uses the `certbot/dns-route53` image and mounts
`/home/chattermate/.aws:/root/.aws:ro`, so the wildcard renews unattended (the `/home/replypier/.aws:/root/.aws:ro`, so the wildcard renews unattended (the
renewal conf remembers `authenticator = dns-route53`). Existing HTTP-01 webroot renewal conf remembers `authenticator = dns-route53`). Existing HTTP-01 webroot
certs still renew — the dns-route53 image is a superset of `certbot/certbot`. certs still renew — the dns-route53 image is a superset of `certbot/certbot`.
`renew` covers every cert in the shared `certbot/conf`, not just the wildcard. `renew` covers every cert in the shared `certbot/conf`, not just the wildcard.
@@ -95,19 +94,19 @@ certs still renew — the dns-route53 image is a superset of `certbot/certbot`.
> ``` > ```
### Host nginx server block ### Host nginx server block
Lives at `~/chattermate/nginx/conf.d/help-center.conf` (mounted read-only into Lives at `~/replypier/nginx/conf.d/help-center.conf` (mounted read-only into
the `chattermate-nginx-1` container). `proxy_set_header Host $host` is what the `replypier-nginx-1` container). `proxy_set_header Host $host` is what
makes backend host-dispatch resolve the org. Upstream is the compose service makes backend host-dispatch resolve the org. Upstream is the compose service
name `backend:8000` (nginx shares the `chattermate-network`), not a published name `backend:8000` (nginx shares the `replypier-network`), not a published
host port. host port.
```nginx ```nginx
# {slug}.help.chattermate.chat # {slug}.help.replypier.site
server { server {
listen 443 ssl http2; listen 443 ssl http2;
server_name *.help.chattermate.chat help.chattermate.chat; server_name *.help.replypier.site help.replypier.site;
ssl_certificate /etc/letsencrypt/live/help.chattermate.chat/fullchain.pem; ssl_certificate /etc/letsencrypt/live/help.replypier.site/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/help.chattermate.chat/privkey.pem; ssl_certificate_key /etc/letsencrypt/live/help.replypier.site/privkey.pem;
include /etc/nginx/conf.d/ssl-params.conf; include /etc/nginx/conf.d/ssl-params.conf;
location / { location / {
@@ -121,7 +120,7 @@ server {
server { server {
listen 80; listen 80;
server_name *.help.chattermate.chat help.chattermate.chat; server_name *.help.replypier.site help.replypier.site;
location /.well-known/acme-challenge/ { root /var/www/certbot; } location /.well-known/acme-challenge/ { root /var/www/certbot; }
location / { return 301 https://$host$request_uri; } location / { return 301 https://$host$request_uri; }
} }
@@ -130,11 +129,11 @@ server {
## 2. Per-customer custom domain (runbook step per domain) ## 2. Per-customer custom domain (runbook step per domain)
Customers add two records (shown in their FAQ admin UI). On the cloud box the Customers add two records (shown in their FAQ admin UI). On the cloud box the
CNAME target `cname.chattermate.chat` is **not** provisioned, so verification CNAME target `cname.replypier.site` is **not** provisioned, so verification
falls back to an A record pointing at `HELP_CENTER_TARGET_IPS` — either form falls back to an A record pointing at `HELP_CENTER_TARGET_IPS` — either form
works: works:
- `CNAME help.customer.com → cname.chattermate.chat` *(or)* `A help.customer.com → <VPS_IPV4>` - `CNAME help.customer.com → cname.replypier.site` *(or)* `A help.customer.com → <VPS_IPV4>`
- `TXT _chattermate.help.customer.com → cm-verify=<token>` - `TXT _replypier.customer.com → rp-verify=<token>`
After they click **Verify domain** (DNS checks pass, `ssl_status` becomes After they click **Verify domain** (DNS checks pass, `ssl_status` becomes
`pending`), issue the certificate on the VPS — HTTP-01 works because the `pending`), issue the certificate on the VPS — HTTP-01 works because the
@@ -161,10 +160,10 @@ admin endpoint for verified-but-unprovisioned domains and runs
whole VPS. whole VPS.
## 3. Verification checklist after deploy ## 3. Verification checklist after deploy
1. `curl -sS -o /dev/null -w '%{http_code}\n' https://<slug>.help.chattermate.chat/` → `200` (and `http://` → `301`). 1. `curl -sS -o /dev/null -w '%{http_code}\n' https://<slug>.help.replypier.site/` → `200` (and `http://` → `301`).
2. `https://<slug>.help.chattermate.chat` in a browser → published FAQs render, widget loads; an article at `/a/<faq-slug>` returns `200`. 2. `https://<slug>.help.replypier.site` in a browser → published FAQs render, widget loads; an article at `/a/<faq-slug>` returns `200`.
3. `docker exec chattermate-backend-1 printenv HELP_CENTER_BASE_DOMAIN` → `help.chattermate.chat` (and the backend is `healthy`, not crash-looping on `HELP_CENTER_TARGET_IPS`). 3. `docker exec replypier-backend-1 printenv HELP_CENTER_BASE_DOMAIN` → `help.replypier.site` (and the backend is `healthy`, not crash-looping on `HELP_CENTER_TARGET_IPS`).
4. API unaffected: `https://app.chattermate.chat` / `https://api.chattermate.chat/api/v1/...` still route normally. 4. API unaffected: `https://app.replypier.site` / `https://api.replypier.site/api/v1/...` still route normally.
5. `POST /ask` from the page returns an answer and appears in `help_center_queries`. 5. `POST /ask` from the page returns an answer and appears in `help_center_queries`.
6. `docker ps -a --filter name=certbot` → **empty**. `compose up -d` must not start a 6. `docker ps -a --filter name=certbot` → **empty**. `compose up -d` must not start a
certbot container; one that sticks around means the long-running loop entrypoint is certbot container; one that sticks around means the long-running loop entrypoint is
@@ -180,7 +179,7 @@ The feature is gated by the `help_center` plan flag, which lives in the
- backfill existing plan rows' `features` JSON with the same values; - backfill existing plan rows' `features` JSON with the same values;
- extend the message-limit check to add the org's period - extend the message-limit check to add the org's period
`help_center_queries` count (`HelpCenterQueryRepository.count_for_period`) `help_center_queries` count (`HelpCenterQueryRepository.count_for_period`)
to the bot-message count when the org runs on the ChatterMate-hosted model. to the bot-message count when the org runs on the ReplyPier-hosted model.
Until that PR deploys, cloud orgs see the upgrade lock (`plan_allowed: Until that PR deploys, cloud orgs see the upgrade lock (`plan_allowed:
false`); self-hosted/OSS installs are unrestricted immediately. false`); self-hosted/OSS installs are unrestricted immediately.
+3 -3
View File
@@ -63,14 +63,14 @@ Python 后端、知识库 worker、前端预览服务在宿主机运行;Postgr
| Redis | `127.0.0.1:16380` | | Redis | `127.0.0.1:16380` |
- Docker context:`colima-bytedesk`。 - Docker context:`colima-bytedesk`。
- Compose 项目名:`chattermate-local`。 - Compose 项目名:`replypier-local`。
- 数据库卷:`chattermate-local_postgres_data`。 - 数据库卷:`replypier-local_postgres_data`。
- 配置:`backend/.env`、`frontend/.env`、`deploy/local/.env`。 - 配置:`backend/.env`、`frontend/.env`、`deploy/local/.env`。
- 运行文件、日志、构建产物、嵌入模型缓存:`deploy/local/.state/`。 - 运行文件、日志、构建产物、嵌入模型缓存:`deploy/local/.state/`。
- Widget 与演示配置:[test-environment.json](deploy/local/.state/test-environment.json)。 - Widget 与演示配置:[test-environment.json](deploy/local/.state/test-environment.json)。
- 模型配置:DeepSeek / `deepseek-flash`;API Key 由应用加密保存在数据库中。 - 模型配置:DeepSeek / `deepseek-flash`;API Key 由应用加密保存在数据库中。
启动脚本使用上述 context、项目名和卷。不要随意改名、删除数据卷或关闭承载数据库的 Colima 虚拟机。 启动脚本使用上述 context、项目名和卷。不要随意改动这些名称、删除数据卷或关闭承载数据库的 Colima 虚拟机。
恢复数据时须同时保留数据库和 `backend/.env` 中的加密配置,否则加密保存的模型配置及消息可能无法读取。不要覆盖密钥、重置管理员,或将私有环境文件提交和对外分享。 恢复数据时须同时保留数据库和 `backend/.env` 中的加密配置,否则加密保存的模型配置及消息可能无法读取。不要覆盖密钥、重置管理员,或将私有环境文件提交和对外分享。
+7 -6
View File
@@ -1,8 +1,9 @@
ChatterMate ReplyPier
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
This product includes software developed by ChatterMate This product is the ReplyPier AI customer-support platform: an AI agent answers
(https://chattermate.chat). first from your own knowledge base, a human takes over in the same conversation,
and the visitor can rate the service at the end.
Licensed under the Apache License, Version 2.0. See the LICENSE file for Licensed under the Apache License, Version 2.0. See the LICENSE file for the
the full license text. full license text. Contribution terms are in CONTRIBUTING.md.
+2 -2
View File
@@ -1,5 +1,5 @@
# Database Configuration # Database Configuration
DATABASE_URL=postgresql+psycopg://postgres:postgres@db:5432/chattermate DATABASE_URL=postgresql+psycopg://postgres:postgres@db:5432/replypier
# CORS Configuration add backend url to allow cors from frontend # CORS Configuration add backend url to allow cors from frontend
CORS_ORIGINS=["http://localhost:3000","http://localhost:8000"] CORS_ORIGINS=["http://localhost:3000","http://localhost:8000"]
@@ -61,7 +61,7 @@ ENVIRONMENT=development
# S3 Configuration # S3 Configuration
S3_FILE_STORAGE=false S3_FILE_STORAGE=false
S3_BUCKET=chattermate-uploads S3_BUCKET=replypier-uploads
S3_REGION=us-east-1 S3_REGION=us-east-1
# Leave both blank on EC2/ECS/EKS to use the attached IAM role — boto3 then # Leave both blank on EC2/ECS/EKS to use the attached IAM role — boto3 then
# resolves credentials from its default chain. Set them only for static keys; # resolves credentials from its default chain. Set them only for static keys;
+1 -1
View File
@@ -1,5 +1,5 @@
""" """
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
+1 -1
View File
@@ -1,5 +1,5 @@
""" """
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@@ -1,5 +1,5 @@
""" """
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@@ -1,5 +1,5 @@
""" """
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@@ -1,5 +1,5 @@
""" """
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@@ -1,5 +1,5 @@
""" """
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@@ -1,5 +1,5 @@
""" """
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@@ -1,5 +1,5 @@
""" """
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@@ -1,5 +1,5 @@
""" """
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@@ -1,5 +1,5 @@
""" """
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@@ -1,5 +1,5 @@
""" """
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@@ -1,5 +1,5 @@
""" """
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@@ -1,5 +1,5 @@
""" """
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@@ -14,7 +14,7 @@ See the License for the specific language governing permissions and
limitations under the License. limitations under the License.
""" """
"""Added chattermate AI model """Added replypier AI model
Revision ID: 520df92643e3 Revision ID: 520df92643e3
Revises: 85364d188f15 Revises: 85364d188f15
@@ -35,7 +35,7 @@ depends_on: Union[str, Sequence[str], None] = None
def upgrade() -> None: def upgrade() -> None:
# ### commands auto generated by Alembic - please adjust! ### # ### commands auto generated by Alembic - please adjust! ###
# Create a new temporary type with the new value # Create a new temporary type with the new value
op.execute("ALTER TYPE aimodeltype ADD VALUE IF NOT EXISTS 'CHATTERMATE'") op.execute("ALTER TYPE aimodeltype ADD VALUE IF NOT EXISTS 'REPLYPIER'")
# ### end Alembic commands ### # ### end Alembic commands ###
def downgrade() -> None: def downgrade() -> None:
@@ -1,5 +1,5 @@
""" """
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@@ -1,5 +1,5 @@
""" """
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@@ -1,5 +1,5 @@
""" """
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@@ -1,5 +1,5 @@
""" """
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@@ -1,5 +1,5 @@
""" """
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@@ -1,5 +1,5 @@
""" """
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@@ -1,5 +1,5 @@
""" """
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@@ -1,5 +1,5 @@
""" """
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@@ -1,5 +1,5 @@
""" """
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@@ -1,5 +1,5 @@
""" """
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@@ -1,5 +1,5 @@
""" """
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@@ -1,5 +1,5 @@
""" """
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@@ -1,5 +1,5 @@
""" """
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@@ -1,5 +1,5 @@
""" """
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@@ -1,5 +1,5 @@
""" """
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@@ -1,5 +1,5 @@
""" """
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@@ -1,5 +1,5 @@
""" """
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@@ -1,5 +1,5 @@
""" """
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@@ -1,5 +1,5 @@
""" """
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@@ -1,5 +1,5 @@
""" """
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@@ -1,5 +1,5 @@
""" """
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@@ -1,5 +1,5 @@
""" """
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@@ -1,5 +1,5 @@
""" """
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@@ -1,5 +1,5 @@
""" """
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@@ -1,5 +1,5 @@
""" """
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@@ -1,5 +1,5 @@
""" """
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@@ -1,5 +1,5 @@
""" """
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@@ -1,5 +1,5 @@
""" """
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@@ -1,5 +1,5 @@
""" """
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@@ -1,5 +1,5 @@
""" """
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@@ -1,5 +1,5 @@
""" """
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@@ -1,5 +1,5 @@
""" """
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@@ -1,5 +1,5 @@
""" """
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@@ -1,5 +1,5 @@
""" """
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@@ -1,5 +1,5 @@
""" """
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@@ -1,5 +1,5 @@
""" """
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@@ -1,5 +1,5 @@
""" """
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@@ -1,5 +1,5 @@
""" """
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@@ -1,5 +1,5 @@
""" """
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@@ -1,5 +1,5 @@
""" """
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@@ -1,5 +1,5 @@
""" """
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@@ -1,5 +1,5 @@
""" """
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@@ -1,5 +1,5 @@
""" """
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@@ -1,5 +1,5 @@
""" """
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@@ -1,5 +1,5 @@
""" """
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@@ -1,5 +1,5 @@
""" """
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@@ -1,5 +1,5 @@
""" """
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@@ -1,5 +1,5 @@
""" """
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@@ -1,5 +1,5 @@
""" """
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@@ -1,5 +1,5 @@
""" """
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@@ -1,5 +1,5 @@
""" """
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@@ -1,5 +1,5 @@
""" """
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@@ -1,5 +1,5 @@
""" """
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@@ -1,5 +1,5 @@
""" """
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@@ -1,5 +1,5 @@
""" """
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@@ -1,5 +1,5 @@
""" """
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@@ -1,5 +1,5 @@
""" """
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@@ -1,5 +1,5 @@
""" """
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@@ -1,5 +1,5 @@
""" """
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@@ -1,5 +1,5 @@
""" """
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@@ -1,5 +1,5 @@
""" """
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@@ -1,5 +1,5 @@
""" """
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@@ -1,5 +1,5 @@
""" """
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@@ -21,7 +21,7 @@ Revises: drop_slack_tables_001
Create Date: 2026-07-12 Create Date: 2026-07-12
New feature: AI-generated FAQs reviewed/published by the org and served as a New feature: AI-generated FAQs reviewed/published by the org and served as a
public help center on {slug}.chattermate.help or a verified custom domain. public help center on {slug}.help.replypier.site or a verified custom domain.
Tables: Tables:
- faq_generation_jobs: async generate/import jobs (worker + UI polling) - faq_generation_jobs: async generate/import jobs (worker + UI polling)
@@ -1,5 +1,5 @@
""" """
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@@ -1,5 +1,5 @@
""" """
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@@ -1,5 +1,5 @@
""" """
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@@ -1,5 +1,5 @@
""" """
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@@ -1,5 +1,5 @@
""" """
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@@ -1,5 +1,5 @@
""" """
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@@ -1,5 +1,5 @@
""" """
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@@ -1,5 +1,5 @@
""" """
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@@ -1,5 +1,5 @@
""" """
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@@ -0,0 +1,52 @@
"""
Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
"""
"""Add the ReplyPier managed model to the AI model enum
Revision ID: replypier_ai_model_001
Revises: widget_key_lookup_001
Create Date: 2026-10-26 00:00:00.000000
``AIModelType`` carries a managed-provider member for installs that bill model
usage through ReplyPier instead of the customer's own key. The enum type on an
existing database does not have that value yet, so add it; a database created
from the current head already contains it and this is then a no-op.
"""
from typing import Sequence, Union
from alembic import op
# revision identifiers, used by Alembic.
revision: str = 'replypier_ai_model_001'
down_revision: Union[str, None] = 'widget_key_lookup_001'
branch_labels: Union[str, Sequence[str], None] = None
depends_on: Union[str, Sequence[str], None] = None
MANAGED_VALUE = 'REPLYPIER'
def upgrade() -> None:
# ADD VALUE cannot be used in the same transaction that references the new
# label, so it runs in its own autocommit block.
with op.get_context().autocommit_block():
op.execute(
f"ALTER TYPE aimodeltype ADD VALUE IF NOT EXISTS '{MANAGED_VALUE}'"
)
def downgrade() -> None:
# PostgreSQL cannot drop an enum value; nothing to undo.
pass
+1 -1
View File
@@ -1,5 +1,5 @@
""" """
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
+1 -1
View File
@@ -1,5 +1,5 @@
""" """
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
+1 -1
View File
@@ -1,5 +1,5 @@
""" """
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
+1 -1
View File
@@ -1,5 +1,5 @@
""" """
Copyright 2024-2026 ChatterMate Copyright 2024-2026 ReplyPier
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
Loaded 100 of 1156 files, more files were not shown because too many files have changed in this diff. Show more