diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 701f1ead..5afe98ea 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -55,13 +55,16 @@ jobs: uses: golangci/golangci-lint-action@v6 with: version: v1.64 + working-directory: backend # Vet - name: Run go vet + working-directory: backend run: go vet ./... # Unit + Integration Tests - name: Run unit & integration tests + working-directory: backend env: GOCHAT_ENV: test GOCHAT_TEST_DB: ${{ matrix.db-mode }} @@ -78,6 +81,7 @@ jobs: # E2E Tests (only on postgres matrix) - name: Run e2e tests if: matrix.db-mode == 'postgres' + working-directory: backend env: GOCHAT_ENV: test POSTGRES_HOST: localhost @@ -91,6 +95,7 @@ jobs: # Benchmark (quick sanity check, not full bench) - name: Run benchmarks + working-directory: backend env: GOCHAT_ENV: test GOCHAT_TEST_DB: ${{ matrix.db-mode }} @@ -106,7 +111,7 @@ jobs: if: matrix.db-mode == 'postgres' uses: codecov/codecov-action@v4 with: - files: coverage.out + files: backend/coverage.out # ---- Stage 2: Security Scan ---- security: @@ -124,9 +129,11 @@ jobs: uses: securego/gosec@master with: args: '-no-fail ./...' + working-directory: backend # Dependency vulnerability scan - name: Run govulncheck + working-directory: backend run: go install golang.org/x/vuln/cmd/govulncheck@latest && govulncheck ./... # Trivy filesystem scan @@ -185,7 +192,7 @@ jobs: uses: docker/build-push-action@v5 with: context: . - file: ./Dockerfile + file: ./deploy/docker/Dockerfile push: true tags: ${{ steps.meta.outputs.tags }} labels: ${{ steps.meta.outputs.labels }} @@ -260,8 +267,8 @@ jobs: # Post-deploy health check - name: Health check run: | - chmod +x scripts/health_check.sh - GOCHAT_HOST=gochat-staging GOCHAT_PORT=3000 ./scripts/health_check.sh --full --timeout 30 + chmod +x backend/scripts/health_check.sh + GOCHAT_HOST=gochat-staging GOCHAT_PORT=3000 ./backend/scripts/health_check.sh --full --timeout 30 # ---- Stage 6: Deploy to Production ---- deploy-production: @@ -290,5 +297,5 @@ jobs: # Post-deploy health check - name: Health check run: | - chmod +x scripts/health_check.sh - GOCHAT_HOST=gochat-production GOCHAT_PORT=3000 ./scripts/health_check.sh --full --timeout 30 \ No newline at end of file + chmod +x backend/scripts/health_check.sh + GOCHAT_HOST=gochat-production GOCHAT_PORT=3000 ./backend/scripts/health_check.sh --full --timeout 30 \ No newline at end of file diff --git a/AGENTS.md b/AGENTS.md new file mode 100644 index 00000000..0022d532 --- /dev/null +++ b/AGENTS.md @@ -0,0 +1,101 @@ +# AGENTS.md — GoChat + +Guidance for AI coding agents (and humans pairing with them) working in this repository. + +## Repository Layout + +This is a **monorepo** with a clear separation between backend code, deployment +artifacts, and documentation: + +``` +backend/ # Go backend (the Go module lives here) + cmd/ # Entry points: gochat (server/seed), migrate, route_parity, ... + internal/ # App logic: handler, service, repository, model, config, ws, ... + pkg/ # Reusable packages: crypto, logger, pagination, response, ... + configs/ # Viper config files (config.yaml + config.{env}.yaml) + migrations/ # golang-migrate SQL files (sequential, .up.sql / .down.sql) + docs/ # swaggo-generated Swagger Go package (imported by the router) + scripts/ # migrate.sh, seed.sh, health_check.sh, route-parity tooling + tests/ # e2e tests + test helpers +deploy/ # Deployment artifacts + docker/ # Dockerfile, Dockerfile.dev, docker-compose.{yml,dev,prod,test}.yml + quickstart/ # One-shot local/UAT Compose stack (PG+pgvector+Redis+Meilisearch+Mailhog) + fluentd/ # Log shipping config +docs/ # Project documentation (architecture, requirements, plans, reports) +``` + +The **Go module root is `backend/`** — run all `go` commands from there. +Build context for Docker is the **repository root** (`.`), not `backend/`. + +## Build & Test Commands + +All Go commands run from `backend/`: + +```bash +cd backend + +# Build +go build ./... # compile everything +make build # build ./cmd/gochat → bin/gochat + +# Run +go run cmd/gochat/main.go serve # API server (default subcommand) +go run cmd/gochat/main.go seed # seed demo data + +# Test +go test ./... # all tests +GOCHAT_TEST_DB=sqlite go test ./internal/... ./pkg/... ./cmd/... # no PG needed +go test -v -race ./... # with race detector +go test -v ./tests/e2e/... # e2e + +# Lint +golangci-lint run ./... +go vet ./... +``` + +Docker (build context = repo root, Dockerfile in `deploy/docker/`): + +```bash +# Quickstart stack from repo root +cd deploy/quickstart && cp .env.example .env && docker compose up -d --build + +# Build image manually from backend/ +make docker +``` + +## Go Version & Tooling + +- **Go**: 1.24+ (go.mod declares 1.24.0; CI uses 1.25). Toolchain: go1.24.4. +- **HTTP**: Gin v1.10 +- **ORM**: GORM v2 +- **DB**: PostgreSQL 16 + pgvector (SQLite supported for tests via `GOCHAT_TEST_DB=sqlite`) +- **Config**: Viper (multi-env overlay: `config.yaml` → `config.{env}.yaml` → `.env`) +- **Swagger**: swaggo/swag — generated docs live in `backend/docs/` (a Go package imported by `internal/router`); **do not move them out of the module**. + +## Code Style & Conventions + +- Tabs for Go/Makefile; 2-space for YAML/JSON/TOML (see `.editorconfig`). +- Match existing patterns in the surrounding code — do not reformat unrelated files. +- Layered architecture: `handler → service → repository → model`. Respect layer boundaries; don't call repositories directly from handlers. +- PG-only features (pgvector search, etc.) must guard with `skipIfSQLite` so SQLite test mode stays green. +- New DB schema changes go through numbered SQL migrations in `backend/migrations/` (`NNNNN_name.{up,down}.sql`). + +## Configuration + +- Config files: `backend/configs/config.yaml` (base) + `config.dev.yaml` / `config.prod.yaml` (env overlays). +- Viper search paths: `./configs`, `./`, `/etc/gochat/`. +- Runtime config dir is resolved from the base config's location, so env overlays load from the same dir automatically. +- Secrets/`.env` are gitignored — never commit them. + +## Deployment Notes + +- The production `Dockerfile` (in `deploy/docker/`) uses repo root as build context and `COPY backend/` for sources. When adding files the image needs, place them under `backend/` or update the COPY directives. +- `docker-compose*.yml` files in `deploy/docker/` use `context: ../..` (repo root) and `dockerfile: deploy/docker/Dockerfile`. +- CI (`.github/workflows/ci.yml`) runs Go commands with `working-directory: backend` and builds the Docker image with `file: ./deploy/docker/Dockerfile`. + +## Things to Avoid + +- Do not move `backend/docs/*.go` — they are a compiled Go package imported by the router. +- Do not add Go files to `backend/scripts/legacy/` expecting them to be excluded — `go build ./...` compiles them; keep that directory for one-off scripts only. +- Do not commit `.env`, `coverage.out`, `bin/`, or `tmp/`. +- Do not rewrite git history or force-push without explicit instruction. diff --git a/README.md b/README.md index dd28d445..0241afdd 100644 --- a/README.md +++ b/README.md @@ -18,26 +18,36 @@ GoChat 采用 **分层架构** + **模块化设计**: ``` -cmd/ # 入口(migrate, server) -internal/ - app/ # 应用启动、graceful shutdown - auth/ # JWT认证、Refresh Token、TOTP - autoassignment/ # 智能分配 - channel/provider/ # 渠道抽象层(Telegram/WebWidget/Email) - config/ # Viper多环境热加载配置 - handler/api/v1/ # HTTP Handler(Gin,104+路由) - llm/ # CaptainAI LLM Provider(OpenAI/Ollama/volcengine) - middleware/ # Auth/CORS/RateLimiting/AccountScope/InputValidation - model/ # GORM 数据模型(Base/Account/User/Contact/Inbox等) - pubsub/ # Redis Pub/Sub - repository/ # 数据访问层(21 repo) - service/ # 业务逻辑层 - ws/ # WebSocket Hub(/cable) -pkg/ - crypto/ # bcrypt Hash/Check - validation/ # go-playground/validator/v10 自定义规则 -tests/ - e2e/ # 端到端测试(Auth/AccountCRUD/CRM) +backend/ # Go 后端(单仓库 monorepo 子目录) + cmd/ # 入口(migrate, server) + internal/ + app/ # 应用启动、graceful shutdown + auth/ # JWT认证、Refresh Token、TOTP + autoassignment/ # 智能分配 + channel/provider/ # 渠道抽象层(Telegram/WebWidget/Email) + config/ # Viper多环境热加载配置 + handler/api/v1/ # HTTP Handler(Gin,104+路由) + llm/ # CaptainAI LLM Provider(OpenAI/Ollama/volcengine) + middleware/ # Auth/CORS/RateLimiting/AccountScope/InputValidation + model/ # GORM 数据模型(Base/Account/User/Contact/Inbox等) + pubsub/ # Redis Pub/Sub + repository/ # 数据访问层(21 repo) + service/ # 业务逻辑层 + ws/ # WebSocket Hub(/cable) + pkg/ + crypto/ # bcrypt Hash/Check + validation/ # go-playground/validator/v10 自定义规则 + configs/ # 多环境配置(config.yaml + config.{env}.yaml) + migrations/ # SQL 迁移文件 + docs/ # Swagger/OpenAPI 生成代码 + scripts/ # 迁移、种子、健康检查等脚本 + tests/ + e2e/ # 端到端测试(Auth/AccountCRUD/CRM) +deploy/ # 部署相关 + docker/ # Dockerfile + docker-compose(dev/prod/test) + quickstart/ # 本地/UAT 一键启动 Compose 栈 + fluentd/ # 日志收集配置 +docs/ # 项目文档(架构、需求、计划、报告) ``` ## 快速开始 @@ -56,15 +66,16 @@ tests/ git clone https://github.com/gochat/gochat.git cd gochat -# 安装依赖 +# 安装依赖(在 backend/ 下) +cd backend go mod download -# 配置环境 -cp .env.example .env +# 配置环境(从仓库根目录复制) +cp ../.env.example ../.env # 编辑 .env 配置数据库、Redis、JWT等 # 运行服务 -go run cmd/server/main.go +go run cmd/gochat/main.go serve # 运行测试(SQLite模式,无需PG) GOCHAT_TEST_DB=sqlite go test ./internal/... ./pkg/... ./cmd/... @@ -94,9 +105,9 @@ docker compose --profile seed run --rm seed GoChat 使用 **Viper 多环境叠加**机制: -- `configs/default.yaml` — 默认配置 -- `configs/production.yaml` — 生产覆盖 -- `configs/development.yaml` — 开发覆盖 +- `backend/configs/config.yaml` — 默认配置 +- `backend/configs/config.prod.yaml` — 生产覆盖 +- `backend/configs/config.dev.yaml` — 开发覆盖 - `.env` — 本地覆盖(最高优先级) - 11 个字段支持 **热加载**(无需重启) diff --git a/.air.toml b/backend/.air.toml similarity index 100% rename from .air.toml rename to backend/.air.toml diff --git a/Makefile b/backend/Makefile similarity index 96% rename from Makefile rename to backend/Makefile index cfebe1a2..f3eec021 100644 --- a/Makefile +++ b/backend/Makefile @@ -50,7 +50,7 @@ clean: ## docker: Build Docker image docker: - docker build -t $(APP_NAME) . + docker build -t $(APP_NAME) -f ../deploy/docker/Dockerfile ../ ## db_create: Create database (ref: Chatwoot make db_create) db_create: diff --git a/cmd/dump_routes/main.go b/backend/cmd/dump_routes/main.go similarity index 100% rename from cmd/dump_routes/main.go rename to backend/cmd/dump_routes/main.go diff --git a/cmd/gochat/main.go b/backend/cmd/gochat/main.go similarity index 100% rename from cmd/gochat/main.go rename to backend/cmd/gochat/main.go diff --git a/cmd/migrate/main.go b/backend/cmd/migrate/main.go similarity index 100% rename from cmd/migrate/main.go rename to backend/cmd/migrate/main.go diff --git a/cmd/migrate/migrate_test.go b/backend/cmd/migrate/migrate_test.go similarity index 100% rename from cmd/migrate/migrate_test.go rename to backend/cmd/migrate/migrate_test.go diff --git a/cmd/reindex_search/main.go b/backend/cmd/reindex_search/main.go similarity index 100% rename from cmd/reindex_search/main.go rename to backend/cmd/reindex_search/main.go diff --git a/cmd/reindex_search/main_test.go b/backend/cmd/reindex_search/main_test.go similarity index 100% rename from cmd/reindex_search/main_test.go rename to backend/cmd/reindex_search/main_test.go diff --git a/cmd/route_parity/main.go b/backend/cmd/route_parity/main.go similarity index 100% rename from cmd/route_parity/main.go rename to backend/cmd/route_parity/main.go diff --git a/cmd/test_debug/main.go b/backend/cmd/test_debug/main.go similarity index 100% rename from cmd/test_debug/main.go rename to backend/cmd/test_debug/main.go diff --git a/configs/config.dev.yaml b/backend/configs/config.dev.yaml similarity index 100% rename from configs/config.dev.yaml rename to backend/configs/config.dev.yaml diff --git a/configs/config.prod.yaml b/backend/configs/config.prod.yaml similarity index 100% rename from configs/config.prod.yaml rename to backend/configs/config.prod.yaml diff --git a/configs/config.yaml b/backend/configs/config.yaml similarity index 100% rename from configs/config.yaml rename to backend/configs/config.yaml diff --git a/configs/fluentd.conf b/backend/configs/fluentd.conf similarity index 100% rename from configs/fluentd.conf rename to backend/configs/fluentd.conf diff --git a/configs/prometheus_alerts.yml b/backend/configs/prometheus_alerts.yml similarity index 100% rename from configs/prometheus_alerts.yml rename to backend/configs/prometheus_alerts.yml diff --git a/configs/redis.conf b/backend/configs/redis.conf similarity index 100% rename from configs/redis.conf rename to backend/configs/redis.conf diff --git a/docs/docs.go b/backend/docs/docs.go similarity index 100% rename from docs/docs.go rename to backend/docs/docs.go diff --git a/docs/swag_overrides.txt b/backend/docs/swag_overrides.txt similarity index 100% rename from docs/swag_overrides.txt rename to backend/docs/swag_overrides.txt diff --git a/docs/swagger.json b/backend/docs/swagger.json similarity index 100% rename from docs/swagger.json rename to backend/docs/swagger.json diff --git a/docs/swagger.yaml b/backend/docs/swagger.yaml similarity index 100% rename from docs/swagger.yaml rename to backend/docs/swagger.yaml diff --git a/docs/swagger_models.go b/backend/docs/swagger_models.go similarity index 100% rename from docs/swagger_models.go rename to backend/docs/swagger_models.go diff --git a/go.mod b/backend/go.mod similarity index 100% rename from go.mod rename to backend/go.mod diff --git a/go.sum b/backend/go.sum similarity index 100% rename from go.sum rename to backend/go.sum diff --git a/internal/app/app.go b/backend/internal/app/app.go similarity index 100% rename from internal/app/app.go rename to backend/internal/app/app.go diff --git a/internal/app/bootstrap.go b/backend/internal/app/bootstrap.go similarity index 100% rename from internal/app/bootstrap.go rename to backend/internal/app/bootstrap.go diff --git a/internal/app/database.go b/backend/internal/app/database.go similarity index 100% rename from internal/app/database.go rename to backend/internal/app/database.go diff --git a/internal/app/redis.go b/backend/internal/app/redis.go similarity index 100% rename from internal/app/redis.go rename to backend/internal/app/redis.go diff --git a/internal/app/redis_test.go_BAK b/backend/internal/app/redis_test.go_BAK similarity index 100% rename from internal/app/redis_test.go_BAK rename to backend/internal/app/redis_test.go_BAK diff --git a/internal/app/shutdown.go b/backend/internal/app/shutdown.go similarity index 100% rename from internal/app/shutdown.go rename to backend/internal/app/shutdown.go diff --git a/internal/auth/benchmark_test.go_BAK b/backend/internal/auth/benchmark_test.go_BAK similarity index 100% rename from internal/auth/benchmark_test.go_BAK rename to backend/internal/auth/benchmark_test.go_BAK diff --git a/internal/auth/jwt.go b/backend/internal/auth/jwt.go similarity index 100% rename from internal/auth/jwt.go rename to backend/internal/auth/jwt.go diff --git a/internal/auth/jwt_test.go_BAK b/backend/internal/auth/jwt_test.go_BAK similarity index 100% rename from internal/auth/jwt_test.go_BAK rename to backend/internal/auth/jwt_test.go_BAK diff --git a/internal/auth/ldap.go b/backend/internal/auth/ldap.go similarity index 100% rename from internal/auth/ldap.go rename to backend/internal/auth/ldap.go diff --git a/internal/auth/ldap_test.go b/backend/internal/auth/ldap_test.go similarity index 100% rename from internal/auth/ldap_test.go rename to backend/internal/auth/ldap_test.go diff --git a/internal/auth/mfa.go b/backend/internal/auth/mfa.go similarity index 100% rename from internal/auth/mfa.go rename to backend/internal/auth/mfa.go diff --git a/internal/auth/oauth.go b/backend/internal/auth/oauth.go similarity index 100% rename from internal/auth/oauth.go rename to backend/internal/auth/oauth.go diff --git a/internal/auth/oidc.go b/backend/internal/auth/oidc.go similarity index 100% rename from internal/auth/oidc.go rename to backend/internal/auth/oidc.go diff --git a/internal/auth/oidc_test.go b/backend/internal/auth/oidc_test.go similarity index 100% rename from internal/auth/oidc_test.go rename to backend/internal/auth/oidc_test.go diff --git a/internal/auth/permission.go b/backend/internal/auth/permission.go similarity index 100% rename from internal/auth/permission.go rename to backend/internal/auth/permission.go diff --git a/internal/auth/platform_auth.go b/backend/internal/auth/platform_auth.go similarity index 100% rename from internal/auth/platform_auth.go rename to backend/internal/auth/platform_auth.go diff --git a/internal/auth/policy.go b/backend/internal/auth/policy.go similarity index 100% rename from internal/auth/policy.go rename to backend/internal/auth/policy.go diff --git a/internal/auth/policy_test.go_BAK b/backend/internal/auth/policy_test.go_BAK similarity index 100% rename from internal/auth/policy_test.go_BAK rename to backend/internal/auth/policy_test.go_BAK diff --git a/internal/auth/refresh_store.go b/backend/internal/auth/refresh_store.go similarity index 100% rename from internal/auth/refresh_store.go rename to backend/internal/auth/refresh_store.go diff --git a/internal/auth/refresh_store_test.go_BAK b/backend/internal/auth/refresh_store_test.go_BAK similarity index 100% rename from internal/auth/refresh_store_test.go_BAK rename to backend/internal/auth/refresh_store_test.go_BAK diff --git a/internal/auth/saml.go b/backend/internal/auth/saml.go similarity index 100% rename from internal/auth/saml.go rename to backend/internal/auth/saml.go diff --git a/internal/auth/saml_test.go b/backend/internal/auth/saml_test.go similarity index 100% rename from internal/auth/saml_test.go rename to backend/internal/auth/saml_test.go diff --git a/internal/auth/saml_test.go_BAK b/backend/internal/auth/saml_test.go_BAK similarity index 100% rename from internal/auth/saml_test.go_BAK rename to backend/internal/auth/saml_test.go_BAK diff --git a/internal/auth/session.go b/backend/internal/auth/session.go similarity index 100% rename from internal/auth/session.go rename to backend/internal/auth/session.go diff --git a/internal/auth/sso_middleware.go b/backend/internal/auth/sso_middleware.go similarity index 100% rename from internal/auth/sso_middleware.go rename to backend/internal/auth/sso_middleware.go diff --git a/internal/auth/sso_middleware.go_BAK b/backend/internal/auth/sso_middleware.go_BAK similarity index 100% rename from internal/auth/sso_middleware.go_BAK rename to backend/internal/auth/sso_middleware.go_BAK diff --git a/internal/auth/sso_middleware.go_BAK2 b/backend/internal/auth/sso_middleware.go_BAK2 similarity index 100% rename from internal/auth/sso_middleware.go_BAK2 rename to backend/internal/auth/sso_middleware.go_BAK2 diff --git a/internal/auth/sso_middleware_test.go b/backend/internal/auth/sso_middleware_test.go similarity index 100% rename from internal/auth/sso_middleware_test.go rename to backend/internal/auth/sso_middleware_test.go diff --git a/internal/auth/sso_session_store.go b/backend/internal/auth/sso_session_store.go similarity index 100% rename from internal/auth/sso_session_store.go rename to backend/internal/auth/sso_session_store.go diff --git a/internal/auth/sso_session_store.go_BAK b/backend/internal/auth/sso_session_store.go_BAK similarity index 100% rename from internal/auth/sso_session_store.go_BAK rename to backend/internal/auth/sso_session_store.go_BAK diff --git a/internal/auth/webhook_registry.go b/backend/internal/auth/webhook_registry.go similarity index 100% rename from internal/auth/webhook_registry.go rename to backend/internal/auth/webhook_registry.go diff --git a/internal/autoassignment/capacity_test.go b/backend/internal/autoassignment/capacity_test.go similarity index 100% rename from internal/autoassignment/capacity_test.go rename to backend/internal/autoassignment/capacity_test.go diff --git a/internal/autoassignment/listener.go b/backend/internal/autoassignment/listener.go similarity index 100% rename from internal/autoassignment/listener.go rename to backend/internal/autoassignment/listener.go diff --git a/internal/autoassignment/lowest_load.go b/backend/internal/autoassignment/lowest_load.go similarity index 100% rename from internal/autoassignment/lowest_load.go rename to backend/internal/autoassignment/lowest_load.go diff --git a/internal/autoassignment/model.go b/backend/internal/autoassignment/model.go similarity index 100% rename from internal/autoassignment/model.go rename to backend/internal/autoassignment/model.go diff --git a/internal/autoassignment/rate_limiter.go b/backend/internal/autoassignment/rate_limiter.go similarity index 100% rename from internal/autoassignment/rate_limiter.go rename to backend/internal/autoassignment/rate_limiter.go diff --git a/internal/autoassignment/rate_limiter_test.go b/backend/internal/autoassignment/rate_limiter_test.go similarity index 100% rename from internal/autoassignment/rate_limiter_test.go rename to backend/internal/autoassignment/rate_limiter_test.go diff --git a/internal/autoassignment/round_robin.go b/backend/internal/autoassignment/round_robin.go similarity index 100% rename from internal/autoassignment/round_robin.go rename to backend/internal/autoassignment/round_robin.go diff --git a/internal/autoassignment/service.go b/backend/internal/autoassignment/service.go similarity index 100% rename from internal/autoassignment/service.go rename to backend/internal/autoassignment/service.go diff --git a/internal/automation/action_delivery.go b/backend/internal/automation/action_delivery.go similarity index 100% rename from internal/automation/action_delivery.go rename to backend/internal/automation/action_delivery.go diff --git a/internal/automation/action_delivery_worker.go b/backend/internal/automation/action_delivery_worker.go similarity index 100% rename from internal/automation/action_delivery_worker.go rename to backend/internal/automation/action_delivery_worker.go diff --git a/internal/automation/action_service.go b/backend/internal/automation/action_service.go similarity index 100% rename from internal/automation/action_service.go rename to backend/internal/automation/action_service.go diff --git a/internal/automation/action_service_test.go b/backend/internal/automation/action_service_test.go similarity index 100% rename from internal/automation/action_service_test.go rename to backend/internal/automation/action_service_test.go diff --git a/internal/automation/agent_bot_rule_listener.go b/backend/internal/automation/agent_bot_rule_listener.go similarity index 100% rename from internal/automation/agent_bot_rule_listener.go rename to backend/internal/automation/agent_bot_rule_listener.go diff --git a/internal/automation/agent_bot_rule_listener_test.go b/backend/internal/automation/agent_bot_rule_listener_test.go similarity index 100% rename from internal/automation/agent_bot_rule_listener_test.go rename to backend/internal/automation/agent_bot_rule_listener_test.go diff --git a/internal/automation/automation_test_helper.go b/backend/internal/automation/automation_test_helper.go similarity index 100% rename from internal/automation/automation_test_helper.go rename to backend/internal/automation/automation_test_helper.go diff --git a/internal/automation/bot_rule_model.go b/backend/internal/automation/bot_rule_model.go similarity index 100% rename from internal/automation/bot_rule_model.go rename to backend/internal/automation/bot_rule_model.go diff --git a/internal/automation/bot_rule_service.go b/backend/internal/automation/bot_rule_service.go similarity index 100% rename from internal/automation/bot_rule_service.go rename to backend/internal/automation/bot_rule_service.go diff --git a/internal/automation/bot_rule_service_test.go b/backend/internal/automation/bot_rule_service_test.go similarity index 100% rename from internal/automation/bot_rule_service_test.go rename to backend/internal/automation/bot_rule_service_test.go diff --git a/internal/automation/bot_trigger_config_service.go b/backend/internal/automation/bot_trigger_config_service.go similarity index 100% rename from internal/automation/bot_trigger_config_service.go rename to backend/internal/automation/bot_trigger_config_service.go diff --git a/internal/automation/bot_trigger_config_service_test.go b/backend/internal/automation/bot_trigger_config_service_test.go similarity index 100% rename from internal/automation/bot_trigger_config_service_test.go rename to backend/internal/automation/bot_trigger_config_service_test.go diff --git a/internal/automation/condition_filter.go b/backend/internal/automation/condition_filter.go similarity index 100% rename from internal/automation/condition_filter.go rename to backend/internal/automation/condition_filter.go diff --git a/internal/automation/condition_filter_test.go b/backend/internal/automation/condition_filter_test.go similarity index 100% rename from internal/automation/condition_filter_test.go rename to backend/internal/automation/condition_filter_test.go diff --git a/internal/automation/condition_validator.go b/backend/internal/automation/condition_validator.go similarity index 100% rename from internal/automation/condition_validator.go rename to backend/internal/automation/condition_validator.go diff --git a/internal/automation/condition_validator_test.go b/backend/internal/automation/condition_validator_test.go similarity index 100% rename from internal/automation/condition_validator_test.go rename to backend/internal/automation/condition_validator_test.go diff --git a/internal/automation/csat_survey_listener.go b/backend/internal/automation/csat_survey_listener.go similarity index 100% rename from internal/automation/csat_survey_listener.go rename to backend/internal/automation/csat_survey_listener.go diff --git a/internal/automation/csat_survey_listener_test.go b/backend/internal/automation/csat_survey_listener_test.go similarity index 100% rename from internal/automation/csat_survey_listener_test.go rename to backend/internal/automation/csat_survey_listener_test.go diff --git a/internal/automation/csat_survey_service.go b/backend/internal/automation/csat_survey_service.go similarity index 100% rename from internal/automation/csat_survey_service.go rename to backend/internal/automation/csat_survey_service.go diff --git a/internal/automation/csat_survey_service_test.go b/backend/internal/automation/csat_survey_service_test.go similarity index 100% rename from internal/automation/csat_survey_service_test.go rename to backend/internal/automation/csat_survey_service_test.go diff --git a/internal/automation/execution_log_service.go b/backend/internal/automation/execution_log_service.go similarity index 100% rename from internal/automation/execution_log_service.go rename to backend/internal/automation/execution_log_service.go diff --git a/internal/automation/listener.go b/backend/internal/automation/listener.go similarity index 100% rename from internal/automation/listener.go rename to backend/internal/automation/listener.go diff --git a/internal/automation/listener_test.go b/backend/internal/automation/listener_test.go similarity index 100% rename from internal/automation/listener_test.go rename to backend/internal/automation/listener_test.go diff --git a/internal/automation/macro_service.go b/backend/internal/automation/macro_service.go similarity index 100% rename from internal/automation/macro_service.go rename to backend/internal/automation/macro_service.go diff --git a/internal/automation/macro_service_test.go b/backend/internal/automation/macro_service_test.go similarity index 100% rename from internal/automation/macro_service_test.go rename to backend/internal/automation/macro_service_test.go diff --git a/internal/automation/macro_worker.go b/backend/internal/automation/macro_worker.go similarity index 100% rename from internal/automation/macro_worker.go rename to backend/internal/automation/macro_worker.go diff --git a/internal/automation/model.go b/backend/internal/automation/model.go similarity index 100% rename from internal/automation/model.go rename to backend/internal/automation/model.go diff --git a/internal/automation/model_test.go b/backend/internal/automation/model_test.go similarity index 100% rename from internal/automation/model_test.go rename to backend/internal/automation/model_test.go diff --git a/internal/automation/new_features_test.go b/backend/internal/automation/new_features_test.go similarity index 100% rename from internal/automation/new_features_test.go rename to backend/internal/automation/new_features_test.go diff --git a/internal/automation/service.go b/backend/internal/automation/service.go similarity index 100% rename from internal/automation/service.go rename to backend/internal/automation/service.go diff --git a/internal/automation/service_test.go b/backend/internal/automation/service_test.go similarity index 100% rename from internal/automation/service_test.go rename to backend/internal/automation/service_test.go diff --git a/internal/automation/template_variable.go b/backend/internal/automation/template_variable.go similarity index 100% rename from internal/automation/template_variable.go rename to backend/internal/automation/template_variable.go diff --git a/internal/automation/template_variable_test.go b/backend/internal/automation/template_variable_test.go similarity index 100% rename from internal/automation/template_variable_test.go rename to backend/internal/automation/template_variable_test.go diff --git a/internal/campaign/listener.go b/backend/internal/campaign/listener.go similarity index 100% rename from internal/campaign/listener.go rename to backend/internal/campaign/listener.go diff --git a/internal/campaign/model.go b/backend/internal/campaign/model.go similarity index 100% rename from internal/campaign/model.go rename to backend/internal/campaign/model.go diff --git a/internal/campaign/service.go b/backend/internal/campaign/service.go similarity index 100% rename from internal/campaign/service.go rename to backend/internal/campaign/service.go diff --git a/internal/canned/canned_test_helper.go b/backend/internal/canned/canned_test_helper.go similarity index 100% rename from internal/canned/canned_test_helper.go rename to backend/internal/canned/canned_test_helper.go diff --git a/internal/canned/model.go b/backend/internal/canned/model.go similarity index 100% rename from internal/canned/model.go rename to backend/internal/canned/model.go diff --git a/internal/canned/service.go b/backend/internal/canned/service.go similarity index 100% rename from internal/canned/service.go rename to backend/internal/canned/service.go diff --git a/internal/canned/service_test.go b/backend/internal/canned/service_test.go similarity index 100% rename from internal/canned/service_test.go rename to backend/internal/canned/service_test.go diff --git a/internal/channel/broker.go b/backend/internal/channel/broker.go similarity index 100% rename from internal/channel/broker.go rename to backend/internal/channel/broker.go diff --git a/internal/channel/config.go b/backend/internal/channel/config.go similarity index 100% rename from internal/channel/config.go rename to backend/internal/channel/config.go diff --git a/internal/channel/dispatcher.go b/backend/internal/channel/dispatcher.go similarity index 100% rename from internal/channel/dispatcher.go rename to backend/internal/channel/dispatcher.go diff --git a/internal/channel/dispatcher_worker_test.go b/backend/internal/channel/dispatcher_worker_test.go similarity index 100% rename from internal/channel/dispatcher_worker_test.go rename to backend/internal/channel/dispatcher_worker_test.go diff --git a/internal/channel/email/imap_listener.go b/backend/internal/channel/email/imap_listener.go similarity index 100% rename from internal/channel/email/imap_listener.go rename to backend/internal/channel/email/imap_listener.go diff --git a/internal/channel/email/pipeline.go b/backend/internal/channel/email/pipeline.go similarity index 100% rename from internal/channel/email/pipeline.go rename to backend/internal/channel/email/pipeline.go diff --git a/internal/channel/email/provider.go b/backend/internal/channel/email/provider.go similarity index 100% rename from internal/channel/email/provider.go rename to backend/internal/channel/email/provider.go diff --git a/internal/channel/email/repository.go b/backend/internal/channel/email/repository.go similarity index 100% rename from internal/channel/email/repository.go rename to backend/internal/channel/email/repository.go diff --git a/internal/channel/email/service.go b/backend/internal/channel/email/service.go similarity index 100% rename from internal/channel/email/service.go rename to backend/internal/channel/email/service.go diff --git a/internal/channel/email/smtp_sender.go b/backend/internal/channel/email/smtp_sender.go similarity index 100% rename from internal/channel/email/smtp_sender.go rename to backend/internal/channel/email/smtp_sender.go diff --git a/internal/channel/email/types.go b/backend/internal/channel/email/types.go similarity index 100% rename from internal/channel/email/types.go rename to backend/internal/channel/email/types.go diff --git a/internal/channel/email/webhook_handler.go b/backend/internal/channel/email/webhook_handler.go similarity index 100% rename from internal/channel/email/webhook_handler.go rename to backend/internal/channel/email/webhook_handler.go diff --git a/internal/channel/event.go b/backend/internal/channel/event.go similarity index 100% rename from internal/channel/event.go rename to backend/internal/channel/event.go diff --git a/internal/channel/facebook/instagram_provider.go b/backend/internal/channel/facebook/instagram_provider.go similarity index 100% rename from internal/channel/facebook/instagram_provider.go rename to backend/internal/channel/facebook/instagram_provider.go diff --git a/internal/channel/facebook/instagram_provider.go_BAK2 b/backend/internal/channel/facebook/instagram_provider.go_BAK2 similarity index 100% rename from internal/channel/facebook/instagram_provider.go_BAK2 rename to backend/internal/channel/facebook/instagram_provider.go_BAK2 diff --git a/internal/channel/facebook/instagram_provider_test.go b/backend/internal/channel/facebook/instagram_provider_test.go similarity index 100% rename from internal/channel/facebook/instagram_provider_test.go rename to backend/internal/channel/facebook/instagram_provider_test.go diff --git a/internal/channel/facebook/listener.go b/backend/internal/channel/facebook/listener.go similarity index 100% rename from internal/channel/facebook/listener.go rename to backend/internal/channel/facebook/listener.go diff --git a/internal/channel/facebook/listener.go_BAK2 b/backend/internal/channel/facebook/listener.go_BAK2 similarity index 100% rename from internal/channel/facebook/listener.go_BAK2 rename to backend/internal/channel/facebook/listener.go_BAK2 diff --git a/internal/channel/facebook/media.go b/backend/internal/channel/facebook/media.go similarity index 100% rename from internal/channel/facebook/media.go rename to backend/internal/channel/facebook/media.go diff --git a/internal/channel/facebook/pipeline.go b/backend/internal/channel/facebook/pipeline.go similarity index 100% rename from internal/channel/facebook/pipeline.go rename to backend/internal/channel/facebook/pipeline.go diff --git a/internal/channel/facebook/pipeline.go_BAK2 b/backend/internal/channel/facebook/pipeline.go_BAK2 similarity index 100% rename from internal/channel/facebook/pipeline.go_BAK2 rename to backend/internal/channel/facebook/pipeline.go_BAK2 diff --git a/internal/channel/facebook/provider.go b/backend/internal/channel/facebook/provider.go similarity index 100% rename from internal/channel/facebook/provider.go rename to backend/internal/channel/facebook/provider.go diff --git a/internal/channel/facebook/repository.go b/backend/internal/channel/facebook/repository.go similarity index 100% rename from internal/channel/facebook/repository.go rename to backend/internal/channel/facebook/repository.go diff --git a/internal/channel/facebook/service.go b/backend/internal/channel/facebook/service.go similarity index 100% rename from internal/channel/facebook/service.go rename to backend/internal/channel/facebook/service.go diff --git a/internal/channel/facebook/types.go b/backend/internal/channel/facebook/types.go similarity index 100% rename from internal/channel/facebook/types.go rename to backend/internal/channel/facebook/types.go diff --git a/internal/channel/facebook/user_mapping.go b/backend/internal/channel/facebook/user_mapping.go similarity index 100% rename from internal/channel/facebook/user_mapping.go rename to backend/internal/channel/facebook/user_mapping.go diff --git a/internal/channel/facebook/webhook_handler.go b/backend/internal/channel/facebook/webhook_handler.go similarity index 100% rename from internal/channel/facebook/webhook_handler.go rename to backend/internal/channel/facebook/webhook_handler.go diff --git a/internal/channel/facebook/webhook_handler.go_BAK2 b/backend/internal/channel/facebook/webhook_handler.go_BAK2 similarity index 100% rename from internal/channel/facebook/webhook_handler.go_BAK2 rename to backend/internal/channel/facebook/webhook_handler.go_BAK2 diff --git a/internal/channel/facebook/webhook_handler_test.go b/backend/internal/channel/facebook/webhook_handler_test.go similarity index 100% rename from internal/channel/facebook/webhook_handler_test.go rename to backend/internal/channel/facebook/webhook_handler_test.go diff --git a/internal/channel/google/provider.go b/backend/internal/channel/google/provider.go similarity index 100% rename from internal/channel/google/provider.go rename to backend/internal/channel/google/provider.go diff --git a/internal/channel/incoming.go b/backend/internal/channel/incoming.go similarity index 100% rename from internal/channel/incoming.go rename to backend/internal/channel/incoming.go diff --git a/internal/channel/lifecycle.go b/backend/internal/channel/lifecycle.go similarity index 100% rename from internal/channel/lifecycle.go rename to backend/internal/channel/lifecycle.go diff --git a/internal/channel/line/pipeline.go b/backend/internal/channel/line/pipeline.go similarity index 100% rename from internal/channel/line/pipeline.go rename to backend/internal/channel/line/pipeline.go diff --git a/internal/channel/line/provider.go b/backend/internal/channel/line/provider.go similarity index 100% rename from internal/channel/line/provider.go rename to backend/internal/channel/line/provider.go diff --git a/internal/channel/line/repository.go b/backend/internal/channel/line/repository.go similarity index 100% rename from internal/channel/line/repository.go rename to backend/internal/channel/line/repository.go diff --git a/internal/channel/line/service.go b/backend/internal/channel/line/service.go similarity index 100% rename from internal/channel/line/service.go rename to backend/internal/channel/line/service.go diff --git a/internal/channel/line/types.go b/backend/internal/channel/line/types.go similarity index 100% rename from internal/channel/line/types.go rename to backend/internal/channel/line/types.go diff --git a/internal/channel/line/webhook_handler.go b/backend/internal/channel/line/webhook_handler.go similarity index 100% rename from internal/channel/line/webhook_handler.go rename to backend/internal/channel/line/webhook_handler.go diff --git a/internal/channel/listener.go b/backend/internal/channel/listener.go similarity index 100% rename from internal/channel/listener.go rename to backend/internal/channel/listener.go diff --git a/internal/channel/microsoft/provider.go b/backend/internal/channel/microsoft/provider.go similarity index 100% rename from internal/channel/microsoft/provider.go rename to backend/internal/channel/microsoft/provider.go diff --git a/internal/channel/outgoing.go b/backend/internal/channel/outgoing.go similarity index 100% rename from internal/channel/outgoing.go rename to backend/internal/channel/outgoing.go diff --git a/internal/channel/patch_test.txt b/backend/internal/channel/patch_test.txt similarity index 100% rename from internal/channel/patch_test.txt rename to backend/internal/channel/patch_test.txt diff --git a/internal/channel/provider.go b/backend/internal/channel/provider.go similarity index 100% rename from internal/channel/provider.go rename to backend/internal/channel/provider.go diff --git a/internal/channel/provider/email.go b/backend/internal/channel/provider/email.go similarity index 100% rename from internal/channel/provider/email.go rename to backend/internal/channel/provider/email.go diff --git a/internal/channel/provider/facebook.go b/backend/internal/channel/provider/facebook.go similarity index 100% rename from internal/channel/provider/facebook.go rename to backend/internal/channel/provider/facebook.go diff --git a/internal/channel/provider/instagram.go b/backend/internal/channel/provider/instagram.go similarity index 100% rename from internal/channel/provider/instagram.go rename to backend/internal/channel/provider/instagram.go diff --git a/internal/channel/provider/instagram.go_BAK2 b/backend/internal/channel/provider/instagram.go_BAK2 similarity index 100% rename from internal/channel/provider/instagram.go_BAK2 rename to backend/internal/channel/provider/instagram.go_BAK2 diff --git a/internal/channel/provider/line.go b/backend/internal/channel/provider/line.go similarity index 100% rename from internal/channel/provider/line.go rename to backend/internal/channel/provider/line.go diff --git a/internal/channel/provider/provider.go b/backend/internal/channel/provider/provider.go similarity index 100% rename from internal/channel/provider/provider.go rename to backend/internal/channel/provider/provider.go diff --git a/internal/channel/provider/provider_mock_test.go b/backend/internal/channel/provider/provider_mock_test.go similarity index 100% rename from internal/channel/provider/provider_mock_test.go rename to backend/internal/channel/provider/provider_mock_test.go diff --git a/internal/channel/provider/telegram.go b/backend/internal/channel/provider/telegram.go similarity index 100% rename from internal/channel/provider/telegram.go rename to backend/internal/channel/provider/telegram.go diff --git a/internal/channel/provider/telegram_test.go b/backend/internal/channel/provider/telegram_test.go similarity index 100% rename from internal/channel/provider/telegram_test.go rename to backend/internal/channel/provider/telegram_test.go diff --git a/internal/channel/provider/tiktok.go b/backend/internal/channel/provider/tiktok.go similarity index 100% rename from internal/channel/provider/tiktok.go rename to backend/internal/channel/provider/tiktok.go diff --git a/internal/channel/provider/twilio.go b/backend/internal/channel/provider/twilio.go similarity index 100% rename from internal/channel/provider/twilio.go rename to backend/internal/channel/provider/twilio.go diff --git a/internal/channel/provider/web_widget.go b/backend/internal/channel/provider/web_widget.go similarity index 100% rename from internal/channel/provider/web_widget.go rename to backend/internal/channel/provider/web_widget.go diff --git a/internal/channel/provider/whatsapp.go b/backend/internal/channel/provider/whatsapp.go similarity index 100% rename from internal/channel/provider/whatsapp.go rename to backend/internal/channel/provider/whatsapp.go diff --git a/internal/channel/registry.go b/backend/internal/channel/registry.go similarity index 100% rename from internal/channel/registry.go rename to backend/internal/channel/registry.go diff --git a/internal/channel/telegram/pipeline.go b/backend/internal/channel/telegram/pipeline.go similarity index 100% rename from internal/channel/telegram/pipeline.go rename to backend/internal/channel/telegram/pipeline.go diff --git a/internal/channel/telegram/repository.go b/backend/internal/channel/telegram/repository.go similarity index 100% rename from internal/channel/telegram/repository.go rename to backend/internal/channel/telegram/repository.go diff --git a/internal/channel/telegram/service.go b/backend/internal/channel/telegram/service.go similarity index 100% rename from internal/channel/telegram/service.go rename to backend/internal/channel/telegram/service.go diff --git a/internal/channel/telegram/webhook_handler.go b/backend/internal/channel/telegram/webhook_handler.go similarity index 100% rename from internal/channel/telegram/webhook_handler.go rename to backend/internal/channel/telegram/webhook_handler.go diff --git a/internal/channel/test2.txt b/backend/internal/channel/test2.txt similarity index 100% rename from internal/channel/test2.txt rename to backend/internal/channel/test2.txt diff --git a/internal/channel/test_placeholder.go b/backend/internal/channel/test_placeholder.go similarity index 100% rename from internal/channel/test_placeholder.go rename to backend/internal/channel/test_placeholder.go diff --git a/internal/channel/test_write_check.txt b/backend/internal/channel/test_write_check.txt similarity index 100% rename from internal/channel/test_write_check.txt rename to backend/internal/channel/test_write_check.txt diff --git a/internal/channel/tiktok/pipeline.go b/backend/internal/channel/tiktok/pipeline.go similarity index 100% rename from internal/channel/tiktok/pipeline.go rename to backend/internal/channel/tiktok/pipeline.go diff --git a/internal/channel/tiktok/provider.go b/backend/internal/channel/tiktok/provider.go similarity index 100% rename from internal/channel/tiktok/provider.go rename to backend/internal/channel/tiktok/provider.go diff --git a/internal/channel/tiktok/repository.go b/backend/internal/channel/tiktok/repository.go similarity index 100% rename from internal/channel/tiktok/repository.go rename to backend/internal/channel/tiktok/repository.go diff --git a/internal/channel/tiktok/service.go b/backend/internal/channel/tiktok/service.go similarity index 100% rename from internal/channel/tiktok/service.go rename to backend/internal/channel/tiktok/service.go diff --git a/internal/channel/tiktok/types.go b/backend/internal/channel/tiktok/types.go similarity index 100% rename from internal/channel/tiktok/types.go rename to backend/internal/channel/tiktok/types.go diff --git a/internal/channel/tiktok/webhook_handler.go b/backend/internal/channel/tiktok/webhook_handler.go similarity index 100% rename from internal/channel/tiktok/webhook_handler.go rename to backend/internal/channel/tiktok/webhook_handler.go diff --git a/internal/channel/twilio/pipeline.go b/backend/internal/channel/twilio/pipeline.go similarity index 100% rename from internal/channel/twilio/pipeline.go rename to backend/internal/channel/twilio/pipeline.go diff --git a/internal/channel/twilio/provider.go b/backend/internal/channel/twilio/provider.go similarity index 100% rename from internal/channel/twilio/provider.go rename to backend/internal/channel/twilio/provider.go diff --git a/internal/channel/twilio/repository.go b/backend/internal/channel/twilio/repository.go similarity index 100% rename from internal/channel/twilio/repository.go rename to backend/internal/channel/twilio/repository.go diff --git a/internal/channel/twilio/service.go b/backend/internal/channel/twilio/service.go similarity index 100% rename from internal/channel/twilio/service.go rename to backend/internal/channel/twilio/service.go diff --git a/internal/channel/twilio/types.go b/backend/internal/channel/twilio/types.go similarity index 100% rename from internal/channel/twilio/types.go rename to backend/internal/channel/twilio/types.go diff --git a/internal/channel/twilio/webhook_handler.go b/backend/internal/channel/twilio/webhook_handler.go similarity index 100% rename from internal/channel/twilio/webhook_handler.go rename to backend/internal/channel/twilio/webhook_handler.go diff --git a/internal/channel/twitter/provider.go b/backend/internal/channel/twitter/provider.go similarity index 100% rename from internal/channel/twitter/provider.go rename to backend/internal/channel/twitter/provider.go diff --git a/internal/channel/webhook.go b/backend/internal/channel/webhook.go similarity index 100% rename from internal/channel/webhook.go rename to backend/internal/channel/webhook.go diff --git a/internal/channel/webhook_listener_test.go b/backend/internal/channel/webhook_listener_test.go similarity index 100% rename from internal/channel/webhook_listener_test.go rename to backend/internal/channel/webhook_listener_test.go diff --git a/internal/channel/whatsapp/media.go b/backend/internal/channel/whatsapp/media.go similarity index 100% rename from internal/channel/whatsapp/media.go rename to backend/internal/channel/whatsapp/media.go diff --git a/internal/channel/whatsapp/pipeline.go b/backend/internal/channel/whatsapp/pipeline.go similarity index 100% rename from internal/channel/whatsapp/pipeline.go rename to backend/internal/channel/whatsapp/pipeline.go diff --git a/internal/channel/whatsapp/provider.go b/backend/internal/channel/whatsapp/provider.go similarity index 100% rename from internal/channel/whatsapp/provider.go rename to backend/internal/channel/whatsapp/provider.go diff --git a/internal/channel/whatsapp/repository.go b/backend/internal/channel/whatsapp/repository.go similarity index 100% rename from internal/channel/whatsapp/repository.go rename to backend/internal/channel/whatsapp/repository.go diff --git a/internal/channel/whatsapp/service.go b/backend/internal/channel/whatsapp/service.go similarity index 100% rename from internal/channel/whatsapp/service.go rename to backend/internal/channel/whatsapp/service.go diff --git a/internal/channel/whatsapp/service_test.go b/backend/internal/channel/whatsapp/service_test.go similarity index 100% rename from internal/channel/whatsapp/service_test.go rename to backend/internal/channel/whatsapp/service_test.go diff --git a/internal/channel/whatsapp/types.go b/backend/internal/channel/whatsapp/types.go similarity index 100% rename from internal/channel/whatsapp/types.go rename to backend/internal/channel/whatsapp/types.go diff --git a/internal/channel/whatsapp/webhook_handler.go b/backend/internal/channel/whatsapp/webhook_handler.go similarity index 100% rename from internal/channel/whatsapp/webhook_handler.go rename to backend/internal/channel/whatsapp/webhook_handler.go diff --git a/internal/channel/whatsapp/webhook_handler_test.go b/backend/internal/channel/whatsapp/webhook_handler_test.go similarity index 100% rename from internal/channel/whatsapp/webhook_handler_test.go rename to backend/internal/channel/whatsapp/webhook_handler_test.go diff --git a/internal/channel/write_check.go b/backend/internal/channel/write_check.go similarity index 100% rename from internal/channel/write_check.go rename to backend/internal/channel/write_check.go diff --git a/internal/config/config.go b/backend/internal/config/config.go similarity index 100% rename from internal/config/config.go rename to backend/internal/config/config.go diff --git a/internal/config/config_test.go b/backend/internal/config/config_test.go similarity index 100% rename from internal/config/config_test.go rename to backend/internal/config/config_test.go diff --git a/internal/config/reloader_test.go b/backend/internal/config/reloader_test.go similarity index 100% rename from internal/config/reloader_test.go rename to backend/internal/config/reloader_test.go diff --git a/internal/config/validator.go b/backend/internal/config/validator.go similarity index 100% rename from internal/config/validator.go rename to backend/internal/config/validator.go diff --git a/internal/csat/listener.go b/backend/internal/csat/listener.go similarity index 100% rename from internal/csat/listener.go rename to backend/internal/csat/listener.go diff --git a/internal/csat/model.go b/backend/internal/csat/model.go similarity index 100% rename from internal/csat/model.go rename to backend/internal/csat/model.go diff --git a/internal/csat/service.go b/backend/internal/csat/service.go similarity index 100% rename from internal/csat/service.go rename to backend/internal/csat/service.go diff --git a/internal/database/migrate.go b/backend/internal/database/migrate.go similarity index 100% rename from internal/database/migrate.go rename to backend/internal/database/migrate.go diff --git a/internal/dispatch/dispatcher.go b/backend/internal/dispatch/dispatcher.go similarity index 100% rename from internal/dispatch/dispatcher.go rename to backend/internal/dispatch/dispatcher.go diff --git a/internal/dispatch/dispatcher_worker_test.go b/backend/internal/dispatch/dispatcher_worker_test.go similarity index 100% rename from internal/dispatch/dispatcher_worker_test.go rename to backend/internal/dispatch/dispatcher_worker_test.go diff --git a/internal/dispatch/event.go b/backend/internal/dispatch/event.go similarity index 100% rename from internal/dispatch/event.go rename to backend/internal/dispatch/event.go diff --git a/internal/dispatch/listener_registry.go b/backend/internal/dispatch/listener_registry.go similarity index 100% rename from internal/dispatch/listener_registry.go rename to backend/internal/dispatch/listener_registry.go diff --git a/internal/goimap_stub/client/client.go b/backend/internal/goimap_stub/client/client.go similarity index 100% rename from internal/goimap_stub/client/client.go rename to backend/internal/goimap_stub/client/client.go diff --git a/internal/goimap_stub/goimap.go b/backend/internal/goimap_stub/goimap.go similarity index 100% rename from internal/goimap_stub/goimap.go rename to backend/internal/goimap_stub/goimap.go diff --git a/internal/handler/api/v1/account_handler.go b/backend/internal/handler/api/v1/account_handler.go similarity index 100% rename from internal/handler/api/v1/account_handler.go rename to backend/internal/handler/api/v1/account_handler.go diff --git a/internal/handler/api/v1/account_handler_test.go b/backend/internal/handler/api/v1/account_handler_test.go similarity index 100% rename from internal/handler/api/v1/account_handler_test.go rename to backend/internal/handler/api/v1/account_handler_test.go diff --git a/internal/handler/api/v1/account_handler_test.go_BAK b/backend/internal/handler/api/v1/account_handler_test.go_BAK similarity index 100% rename from internal/handler/api/v1/account_handler_test.go_BAK rename to backend/internal/handler/api/v1/account_handler_test.go_BAK diff --git a/internal/handler/api/v1/account_saml_settings_handler.go b/backend/internal/handler/api/v1/account_saml_settings_handler.go similarity index 100% rename from internal/handler/api/v1/account_saml_settings_handler.go rename to backend/internal/handler/api/v1/account_saml_settings_handler.go diff --git a/internal/handler/api/v1/account_saml_settings_handler_test.go b/backend/internal/handler/api/v1/account_saml_settings_handler_test.go similarity index 100% rename from internal/handler/api/v1/account_saml_settings_handler_test.go rename to backend/internal/handler/api/v1/account_saml_settings_handler_test.go diff --git a/internal/handler/api/v1/agent_bot_handler.go b/backend/internal/handler/api/v1/agent_bot_handler.go similarity index 100% rename from internal/handler/api/v1/agent_bot_handler.go rename to backend/internal/handler/api/v1/agent_bot_handler.go diff --git a/internal/handler/api/v1/agent_bot_handler_test.go b/backend/internal/handler/api/v1/agent_bot_handler_test.go similarity index 100% rename from internal/handler/api/v1/agent_bot_handler_test.go rename to backend/internal/handler/api/v1/agent_bot_handler_test.go diff --git a/internal/handler/api/v1/agent_bot_inbox_handler.go b/backend/internal/handler/api/v1/agent_bot_inbox_handler.go similarity index 100% rename from internal/handler/api/v1/agent_bot_inbox_handler.go rename to backend/internal/handler/api/v1/agent_bot_inbox_handler.go diff --git a/internal/handler/api/v1/agent_bot_inbox_handler_test.go b/backend/internal/handler/api/v1/agent_bot_inbox_handler_test.go similarity index 100% rename from internal/handler/api/v1/agent_bot_inbox_handler_test.go rename to backend/internal/handler/api/v1/agent_bot_inbox_handler_test.go diff --git a/internal/handler/api/v1/agent_bulk_handler.go b/backend/internal/handler/api/v1/agent_bulk_handler.go similarity index 100% rename from internal/handler/api/v1/agent_bulk_handler.go rename to backend/internal/handler/api/v1/agent_bulk_handler.go diff --git a/internal/handler/api/v1/agent_bulk_handler_test.go b/backend/internal/handler/api/v1/agent_bulk_handler_test.go similarity index 100% rename from internal/handler/api/v1/agent_bulk_handler_test.go rename to backend/internal/handler/api/v1/agent_bulk_handler_test.go diff --git a/internal/handler/api/v1/agent_capacity_handler.go b/backend/internal/handler/api/v1/agent_capacity_handler.go similarity index 100% rename from internal/handler/api/v1/agent_capacity_handler.go rename to backend/internal/handler/api/v1/agent_capacity_handler.go diff --git a/internal/handler/api/v1/agent_capacity_handler_test.go b/backend/internal/handler/api/v1/agent_capacity_handler_test.go similarity index 100% rename from internal/handler/api/v1/agent_capacity_handler_test.go rename to backend/internal/handler/api/v1/agent_capacity_handler_test.go diff --git a/internal/handler/api/v1/agent_handler.go b/backend/internal/handler/api/v1/agent_handler.go similarity index 100% rename from internal/handler/api/v1/agent_handler.go rename to backend/internal/handler/api/v1/agent_handler.go diff --git a/internal/handler/api/v1/agent_handler_test.go b/backend/internal/handler/api/v1/agent_handler_test.go similarity index 100% rename from internal/handler/api/v1/agent_handler_test.go rename to backend/internal/handler/api/v1/agent_handler_test.go diff --git a/internal/handler/api/v1/analytics_handler.go b/backend/internal/handler/api/v1/analytics_handler.go similarity index 100% rename from internal/handler/api/v1/analytics_handler.go rename to backend/internal/handler/api/v1/analytics_handler.go diff --git a/internal/handler/api/v1/analytics_handler_test.go b/backend/internal/handler/api/v1/analytics_handler_test.go similarity index 100% rename from internal/handler/api/v1/analytics_handler_test.go rename to backend/internal/handler/api/v1/analytics_handler_test.go diff --git a/internal/handler/api/v1/article_handler.go b/backend/internal/handler/api/v1/article_handler.go similarity index 100% rename from internal/handler/api/v1/article_handler.go rename to backend/internal/handler/api/v1/article_handler.go diff --git a/internal/handler/api/v1/article_handler_test.go b/backend/internal/handler/api/v1/article_handler_test.go similarity index 100% rename from internal/handler/api/v1/article_handler_test.go rename to backend/internal/handler/api/v1/article_handler_test.go diff --git a/internal/handler/api/v1/article_handler_test.go_BAK b/backend/internal/handler/api/v1/article_handler_test.go_BAK similarity index 100% rename from internal/handler/api/v1/article_handler_test.go_BAK rename to backend/internal/handler/api/v1/article_handler_test.go_BAK diff --git a/internal/handler/api/v1/assignable_agent_handler.go b/backend/internal/handler/api/v1/assignable_agent_handler.go similarity index 100% rename from internal/handler/api/v1/assignable_agent_handler.go rename to backend/internal/handler/api/v1/assignable_agent_handler.go diff --git a/internal/handler/api/v1/assignable_agent_handler_test.go b/backend/internal/handler/api/v1/assignable_agent_handler_test.go similarity index 100% rename from internal/handler/api/v1/assignable_agent_handler_test.go rename to backend/internal/handler/api/v1/assignable_agent_handler_test.go diff --git a/internal/handler/api/v1/assignment_policy_handler.go b/backend/internal/handler/api/v1/assignment_policy_handler.go similarity index 100% rename from internal/handler/api/v1/assignment_policy_handler.go rename to backend/internal/handler/api/v1/assignment_policy_handler.go diff --git a/internal/handler/api/v1/assignment_policy_handler_test.go b/backend/internal/handler/api/v1/assignment_policy_handler_test.go similarity index 100% rename from internal/handler/api/v1/assignment_policy_handler_test.go rename to backend/internal/handler/api/v1/assignment_policy_handler_test.go diff --git a/internal/handler/api/v1/assignment_policy_v2_handler.go b/backend/internal/handler/api/v1/assignment_policy_v2_handler.go similarity index 100% rename from internal/handler/api/v1/assignment_policy_v2_handler.go rename to backend/internal/handler/api/v1/assignment_policy_v2_handler.go diff --git a/internal/handler/api/v1/assignment_policy_v2_handler_test.go b/backend/internal/handler/api/v1/assignment_policy_v2_handler_test.go similarity index 100% rename from internal/handler/api/v1/assignment_policy_v2_handler_test.go rename to backend/internal/handler/api/v1/assignment_policy_v2_handler_test.go diff --git a/internal/handler/api/v1/audit_handler.go b/backend/internal/handler/api/v1/audit_handler.go similarity index 100% rename from internal/handler/api/v1/audit_handler.go rename to backend/internal/handler/api/v1/audit_handler.go diff --git a/internal/handler/api/v1/audit_handler_test.go b/backend/internal/handler/api/v1/audit_handler_test.go similarity index 100% rename from internal/handler/api/v1/audit_handler_test.go rename to backend/internal/handler/api/v1/audit_handler_test.go diff --git a/internal/handler/api/v1/audit_writer.go b/backend/internal/handler/api/v1/audit_writer.go similarity index 100% rename from internal/handler/api/v1/audit_writer.go rename to backend/internal/handler/api/v1/audit_writer.go diff --git a/internal/handler/api/v1/auth_handler.go b/backend/internal/handler/api/v1/auth_handler.go similarity index 100% rename from internal/handler/api/v1/auth_handler.go rename to backend/internal/handler/api/v1/auth_handler.go diff --git a/internal/handler/api/v1/auth_handler_test.go b/backend/internal/handler/api/v1/auth_handler_test.go similarity index 100% rename from internal/handler/api/v1/auth_handler_test.go rename to backend/internal/handler/api/v1/auth_handler_test.go diff --git a/internal/handler/api/v1/auth_handler_test.go_BAK b/backend/internal/handler/api/v1/auth_handler_test.go_BAK similarity index 100% rename from internal/handler/api/v1/auth_handler_test.go_BAK rename to backend/internal/handler/api/v1/auth_handler_test.go_BAK diff --git a/internal/handler/api/v1/auto_reply_rule_handler.go b/backend/internal/handler/api/v1/auto_reply_rule_handler.go similarity index 100% rename from internal/handler/api/v1/auto_reply_rule_handler.go rename to backend/internal/handler/api/v1/auto_reply_rule_handler.go diff --git a/internal/handler/api/v1/auto_reply_rule_handler_test.go b/backend/internal/handler/api/v1/auto_reply_rule_handler_test.go similarity index 100% rename from internal/handler/api/v1/auto_reply_rule_handler_test.go rename to backend/internal/handler/api/v1/auto_reply_rule_handler_test.go diff --git a/internal/handler/api/v1/automation_rule_handler.go b/backend/internal/handler/api/v1/automation_rule_handler.go similarity index 100% rename from internal/handler/api/v1/automation_rule_handler.go rename to backend/internal/handler/api/v1/automation_rule_handler.go diff --git a/internal/handler/api/v1/automation_rule_handler_edge_test.go b/backend/internal/handler/api/v1/automation_rule_handler_edge_test.go similarity index 100% rename from internal/handler/api/v1/automation_rule_handler_edge_test.go rename to backend/internal/handler/api/v1/automation_rule_handler_edge_test.go diff --git a/internal/handler/api/v1/automation_rule_handler_test.go b/backend/internal/handler/api/v1/automation_rule_handler_test.go similarity index 100% rename from internal/handler/api/v1/automation_rule_handler_test.go rename to backend/internal/handler/api/v1/automation_rule_handler_test.go diff --git a/internal/handler/api/v1/banner_handler.go b/backend/internal/handler/api/v1/banner_handler.go similarity index 100% rename from internal/handler/api/v1/banner_handler.go rename to backend/internal/handler/api/v1/banner_handler.go diff --git a/internal/handler/api/v1/banner_handler_test.go b/backend/internal/handler/api/v1/banner_handler_test.go similarity index 100% rename from internal/handler/api/v1/banner_handler_test.go rename to backend/internal/handler/api/v1/banner_handler_test.go diff --git a/internal/handler/api/v1/bot_rule_handler.go b/backend/internal/handler/api/v1/bot_rule_handler.go similarity index 100% rename from internal/handler/api/v1/bot_rule_handler.go rename to backend/internal/handler/api/v1/bot_rule_handler.go diff --git a/internal/handler/api/v1/bot_rule_handler_test.go b/backend/internal/handler/api/v1/bot_rule_handler_test.go similarity index 100% rename from internal/handler/api/v1/bot_rule_handler_test.go rename to backend/internal/handler/api/v1/bot_rule_handler_test.go diff --git a/internal/handler/api/v1/bot_trigger_config_handler.go b/backend/internal/handler/api/v1/bot_trigger_config_handler.go similarity index 100% rename from internal/handler/api/v1/bot_trigger_config_handler.go rename to backend/internal/handler/api/v1/bot_trigger_config_handler.go diff --git a/internal/handler/api/v1/bot_trigger_config_handler_test.go b/backend/internal/handler/api/v1/bot_trigger_config_handler_test.go similarity index 100% rename from internal/handler/api/v1/bot_trigger_config_handler_test.go rename to backend/internal/handler/api/v1/bot_trigger_config_handler_test.go diff --git a/internal/handler/api/v1/bulk_action_handler.go b/backend/internal/handler/api/v1/bulk_action_handler.go similarity index 100% rename from internal/handler/api/v1/bulk_action_handler.go rename to backend/internal/handler/api/v1/bulk_action_handler.go diff --git a/internal/handler/api/v1/bulk_action_handler_test.go b/backend/internal/handler/api/v1/bulk_action_handler_test.go similarity index 100% rename from internal/handler/api/v1/bulk_action_handler_test.go rename to backend/internal/handler/api/v1/bulk_action_handler_test.go diff --git a/internal/handler/api/v1/campaign_handler.go b/backend/internal/handler/api/v1/campaign_handler.go similarity index 100% rename from internal/handler/api/v1/campaign_handler.go rename to backend/internal/handler/api/v1/campaign_handler.go diff --git a/internal/handler/api/v1/campaign_handler_test.go b/backend/internal/handler/api/v1/campaign_handler_test.go similarity index 100% rename from internal/handler/api/v1/campaign_handler_test.go rename to backend/internal/handler/api/v1/campaign_handler_test.go diff --git a/internal/handler/api/v1/canned_response_handler.go b/backend/internal/handler/api/v1/canned_response_handler.go similarity index 100% rename from internal/handler/api/v1/canned_response_handler.go rename to backend/internal/handler/api/v1/canned_response_handler.go diff --git a/internal/handler/api/v1/canned_response_handler_test.go b/backend/internal/handler/api/v1/canned_response_handler_test.go similarity index 100% rename from internal/handler/api/v1/canned_response_handler_test.go rename to backend/internal/handler/api/v1/canned_response_handler_test.go diff --git a/internal/handler/api/v1/canned_response_handler_test.go_BAK b/backend/internal/handler/api/v1/canned_response_handler_test.go_BAK similarity index 100% rename from internal/handler/api/v1/canned_response_handler_test.go_BAK rename to backend/internal/handler/api/v1/canned_response_handler_test.go_BAK diff --git a/internal/handler/api/v1/captain_assistant_handler.go b/backend/internal/handler/api/v1/captain_assistant_handler.go similarity index 100% rename from internal/handler/api/v1/captain_assistant_handler.go rename to backend/internal/handler/api/v1/captain_assistant_handler.go diff --git a/internal/handler/api/v1/captain_assistant_handler_test.go b/backend/internal/handler/api/v1/captain_assistant_handler_test.go similarity index 100% rename from internal/handler/api/v1/captain_assistant_handler_test.go rename to backend/internal/handler/api/v1/captain_assistant_handler_test.go diff --git a/internal/handler/api/v1/captain_assistant_response_handler.go b/backend/internal/handler/api/v1/captain_assistant_response_handler.go similarity index 100% rename from internal/handler/api/v1/captain_assistant_response_handler.go rename to backend/internal/handler/api/v1/captain_assistant_response_handler.go diff --git a/internal/handler/api/v1/captain_assistant_response_handler_test.go b/backend/internal/handler/api/v1/captain_assistant_response_handler_test.go similarity index 100% rename from internal/handler/api/v1/captain_assistant_response_handler_test.go rename to backend/internal/handler/api/v1/captain_assistant_response_handler_test.go diff --git a/internal/handler/api/v1/captain_bulk_action_handler.go b/backend/internal/handler/api/v1/captain_bulk_action_handler.go similarity index 100% rename from internal/handler/api/v1/captain_bulk_action_handler.go rename to backend/internal/handler/api/v1/captain_bulk_action_handler.go diff --git a/internal/handler/api/v1/captain_bulk_action_handler_test.go b/backend/internal/handler/api/v1/captain_bulk_action_handler_test.go similarity index 100% rename from internal/handler/api/v1/captain_bulk_action_handler_test.go rename to backend/internal/handler/api/v1/captain_bulk_action_handler_test.go diff --git a/internal/handler/api/v1/captain_custom_tool_crud_handler_test.go b/backend/internal/handler/api/v1/captain_custom_tool_crud_handler_test.go similarity index 100% rename from internal/handler/api/v1/captain_custom_tool_crud_handler_test.go rename to backend/internal/handler/api/v1/captain_custom_tool_crud_handler_test.go diff --git a/internal/handler/api/v1/captain_custom_tool_handler.go b/backend/internal/handler/api/v1/captain_custom_tool_handler.go similarity index 100% rename from internal/handler/api/v1/captain_custom_tool_handler.go rename to backend/internal/handler/api/v1/captain_custom_tool_handler.go diff --git a/internal/handler/api/v1/captain_custom_tool_test_handler_test.go b/backend/internal/handler/api/v1/captain_custom_tool_test_handler_test.go similarity index 100% rename from internal/handler/api/v1/captain_custom_tool_test_handler_test.go rename to backend/internal/handler/api/v1/captain_custom_tool_test_handler_test.go diff --git a/internal/handler/api/v1/captain_document_handler.go b/backend/internal/handler/api/v1/captain_document_handler.go similarity index 100% rename from internal/handler/api/v1/captain_document_handler.go rename to backend/internal/handler/api/v1/captain_document_handler.go diff --git a/internal/handler/api/v1/captain_preference_handler.go b/backend/internal/handler/api/v1/captain_preference_handler.go similarity index 100% rename from internal/handler/api/v1/captain_preference_handler.go rename to backend/internal/handler/api/v1/captain_preference_handler.go diff --git a/internal/handler/api/v1/captain_preference_handler_test.go b/backend/internal/handler/api/v1/captain_preference_handler_test.go similarity index 100% rename from internal/handler/api/v1/captain_preference_handler_test.go rename to backend/internal/handler/api/v1/captain_preference_handler_test.go diff --git a/internal/handler/api/v1/captain_resource_parity_handler_test.go b/backend/internal/handler/api/v1/captain_resource_parity_handler_test.go similarity index 100% rename from internal/handler/api/v1/captain_resource_parity_handler_test.go rename to backend/internal/handler/api/v1/captain_resource_parity_handler_test.go diff --git a/internal/handler/api/v1/captain_scenario_handler.go b/backend/internal/handler/api/v1/captain_scenario_handler.go similarity index 100% rename from internal/handler/api/v1/captain_scenario_handler.go rename to backend/internal/handler/api/v1/captain_scenario_handler.go diff --git a/internal/handler/api/v1/captain_scenario_handler_test.go b/backend/internal/handler/api/v1/captain_scenario_handler_test.go similarity index 100% rename from internal/handler/api/v1/captain_scenario_handler_test.go rename to backend/internal/handler/api/v1/captain_scenario_handler_test.go diff --git a/internal/handler/api/v1/captain_task_extended_handler.go b/backend/internal/handler/api/v1/captain_task_extended_handler.go similarity index 100% rename from internal/handler/api/v1/captain_task_extended_handler.go rename to backend/internal/handler/api/v1/captain_task_extended_handler.go diff --git a/internal/handler/api/v1/captain_task_extended_handler_test.go b/backend/internal/handler/api/v1/captain_task_extended_handler_test.go similarity index 100% rename from internal/handler/api/v1/captain_task_extended_handler_test.go rename to backend/internal/handler/api/v1/captain_task_extended_handler_test.go diff --git a/internal/handler/api/v1/captain_task_handler.go b/backend/internal/handler/api/v1/captain_task_handler.go similarity index 100% rename from internal/handler/api/v1/captain_task_handler.go rename to backend/internal/handler/api/v1/captain_task_handler.go diff --git a/internal/handler/api/v1/captain_task_handler.go.bak b/backend/internal/handler/api/v1/captain_task_handler.go.bak similarity index 100% rename from internal/handler/api/v1/captain_task_handler.go.bak rename to backend/internal/handler/api/v1/captain_task_handler.go.bak diff --git a/internal/handler/api/v1/captain_task_handler_test.go b/backend/internal/handler/api/v1/captain_task_handler_test.go similarity index 100% rename from internal/handler/api/v1/captain_task_handler_test.go rename to backend/internal/handler/api/v1/captain_task_handler_test.go diff --git a/internal/handler/api/v1/category_handler.go b/backend/internal/handler/api/v1/category_handler.go similarity index 100% rename from internal/handler/api/v1/category_handler.go rename to backend/internal/handler/api/v1/category_handler.go diff --git a/internal/handler/api/v1/category_handler_test.go b/backend/internal/handler/api/v1/category_handler_test.go similarity index 100% rename from internal/handler/api/v1/category_handler_test.go rename to backend/internal/handler/api/v1/category_handler_test.go diff --git a/internal/handler/api/v1/category_handler_test.go_BAK b/backend/internal/handler/api/v1/category_handler_test.go_BAK similarity index 100% rename from internal/handler/api/v1/category_handler_test.go_BAK rename to backend/internal/handler/api/v1/category_handler_test.go_BAK diff --git a/internal/handler/api/v1/channel_handler_test_helpers_test.go b/backend/internal/handler/api/v1/channel_handler_test_helpers_test.go similarity index 100% rename from internal/handler/api/v1/channel_handler_test_helpers_test.go rename to backend/internal/handler/api/v1/channel_handler_test_helpers_test.go diff --git a/internal/handler/api/v1/chatwoot_payload.go b/backend/internal/handler/api/v1/chatwoot_payload.go similarity index 100% rename from internal/handler/api/v1/chatwoot_payload.go rename to backend/internal/handler/api/v1/chatwoot_payload.go diff --git a/internal/handler/api/v1/company_handler.go b/backend/internal/handler/api/v1/company_handler.go similarity index 100% rename from internal/handler/api/v1/company_handler.go rename to backend/internal/handler/api/v1/company_handler.go diff --git a/internal/handler/api/v1/company_handler_test.go b/backend/internal/handler/api/v1/company_handler_test.go similarity index 100% rename from internal/handler/api/v1/company_handler_test.go rename to backend/internal/handler/api/v1/company_handler_test.go diff --git a/internal/handler/api/v1/contact_handler.go b/backend/internal/handler/api/v1/contact_handler.go similarity index 100% rename from internal/handler/api/v1/contact_handler.go rename to backend/internal/handler/api/v1/contact_handler.go diff --git a/internal/handler/api/v1/contact_handler_crud_test.go b/backend/internal/handler/api/v1/contact_handler_crud_test.go similarity index 100% rename from internal/handler/api/v1/contact_handler_crud_test.go rename to backend/internal/handler/api/v1/contact_handler_crud_test.go diff --git a/internal/handler/api/v1/contact_handler_edge_test.go b/backend/internal/handler/api/v1/contact_handler_edge_test.go similarity index 100% rename from internal/handler/api/v1/contact_handler_edge_test.go rename to backend/internal/handler/api/v1/contact_handler_edge_test.go diff --git a/internal/handler/api/v1/contact_handler_g3_test.go b/backend/internal/handler/api/v1/contact_handler_g3_test.go similarity index 100% rename from internal/handler/api/v1/contact_handler_g3_test.go rename to backend/internal/handler/api/v1/contact_handler_g3_test.go diff --git a/internal/handler/api/v1/contact_handler_test.go_BAK b/backend/internal/handler/api/v1/contact_handler_test.go_BAK similarity index 100% rename from internal/handler/api/v1/contact_handler_test.go_BAK rename to backend/internal/handler/api/v1/contact_handler_test.go_BAK diff --git a/internal/handler/api/v1/contact_inbox_handler.go b/backend/internal/handler/api/v1/contact_inbox_handler.go similarity index 100% rename from internal/handler/api/v1/contact_inbox_handler.go rename to backend/internal/handler/api/v1/contact_inbox_handler.go diff --git a/internal/handler/api/v1/contact_inbox_handler_test.go b/backend/internal/handler/api/v1/contact_inbox_handler_test.go similarity index 100% rename from internal/handler/api/v1/contact_inbox_handler_test.go rename to backend/internal/handler/api/v1/contact_inbox_handler_test.go diff --git a/internal/handler/api/v1/contact_merge_handler.go b/backend/internal/handler/api/v1/contact_merge_handler.go similarity index 100% rename from internal/handler/api/v1/contact_merge_handler.go rename to backend/internal/handler/api/v1/contact_merge_handler.go diff --git a/internal/handler/api/v1/contact_merge_handler_test.go b/backend/internal/handler/api/v1/contact_merge_handler_test.go similarity index 100% rename from internal/handler/api/v1/contact_merge_handler_test.go rename to backend/internal/handler/api/v1/contact_merge_handler_test.go diff --git a/internal/handler/api/v1/contact_presence.go b/backend/internal/handler/api/v1/contact_presence.go similarity index 100% rename from internal/handler/api/v1/contact_presence.go rename to backend/internal/handler/api/v1/contact_presence.go diff --git a/internal/handler/api/v1/conversation_handler.go b/backend/internal/handler/api/v1/conversation_handler.go similarity index 100% rename from internal/handler/api/v1/conversation_handler.go rename to backend/internal/handler/api/v1/conversation_handler.go diff --git a/internal/handler/api/v1/conversation_handler_crud_test.go b/backend/internal/handler/api/v1/conversation_handler_crud_test.go similarity index 100% rename from internal/handler/api/v1/conversation_handler_crud_test.go rename to backend/internal/handler/api/v1/conversation_handler_crud_test.go diff --git a/internal/handler/api/v1/conversation_handler_edge_test.go b/backend/internal/handler/api/v1/conversation_handler_edge_test.go similarity index 100% rename from internal/handler/api/v1/conversation_handler_edge_test.go rename to backend/internal/handler/api/v1/conversation_handler_edge_test.go diff --git a/internal/handler/api/v1/conversation_handler_test.go b/backend/internal/handler/api/v1/conversation_handler_test.go similarity index 100% rename from internal/handler/api/v1/conversation_handler_test.go rename to backend/internal/handler/api/v1/conversation_handler_test.go diff --git a/internal/handler/api/v1/conversation_handler_test.go.bak b/backend/internal/handler/api/v1/conversation_handler_test.go.bak similarity index 100% rename from internal/handler/api/v1/conversation_handler_test.go.bak rename to backend/internal/handler/api/v1/conversation_handler_test.go.bak diff --git a/internal/handler/api/v1/conversation_insight_handler.go b/backend/internal/handler/api/v1/conversation_insight_handler.go similarity index 100% rename from internal/handler/api/v1/conversation_insight_handler.go rename to backend/internal/handler/api/v1/conversation_insight_handler.go diff --git a/internal/handler/api/v1/conversation_insight_handler_test.go b/backend/internal/handler/api/v1/conversation_insight_handler_test.go similarity index 100% rename from internal/handler/api/v1/conversation_insight_handler_test.go rename to backend/internal/handler/api/v1/conversation_insight_handler_test.go diff --git a/internal/handler/api/v1/conversation_participant_handler.go b/backend/internal/handler/api/v1/conversation_participant_handler.go similarity index 100% rename from internal/handler/api/v1/conversation_participant_handler.go rename to backend/internal/handler/api/v1/conversation_participant_handler.go diff --git a/internal/handler/api/v1/conversation_participant_handler_test.go b/backend/internal/handler/api/v1/conversation_participant_handler_test.go similarity index 100% rename from internal/handler/api/v1/conversation_participant_handler_test.go rename to backend/internal/handler/api/v1/conversation_participant_handler_test.go diff --git a/internal/handler/api/v1/conversation_serializer.go b/backend/internal/handler/api/v1/conversation_serializer.go similarity index 100% rename from internal/handler/api/v1/conversation_serializer.go rename to backend/internal/handler/api/v1/conversation_serializer.go diff --git a/internal/handler/api/v1/conversation_serializer_test.go b/backend/internal/handler/api/v1/conversation_serializer_test.go similarity index 100% rename from internal/handler/api/v1/conversation_serializer_test.go rename to backend/internal/handler/api/v1/conversation_serializer_test.go diff --git a/internal/handler/api/v1/copilot_handler.go b/backend/internal/handler/api/v1/copilot_handler.go similarity index 100% rename from internal/handler/api/v1/copilot_handler.go rename to backend/internal/handler/api/v1/copilot_handler.go diff --git a/internal/handler/api/v1/copilot_suggestion_handler_test.go b/backend/internal/handler/api/v1/copilot_suggestion_handler_test.go similarity index 100% rename from internal/handler/api/v1/copilot_suggestion_handler_test.go rename to backend/internal/handler/api/v1/copilot_suggestion_handler_test.go diff --git a/internal/handler/api/v1/copilot_thread_handler_test.go b/backend/internal/handler/api/v1/copilot_thread_handler_test.go similarity index 100% rename from internal/handler/api/v1/copilot_thread_handler_test.go rename to backend/internal/handler/api/v1/copilot_thread_handler_test.go diff --git a/internal/handler/api/v1/crm_frontend_smoke_test.go b/backend/internal/handler/api/v1/crm_frontend_smoke_test.go similarity index 100% rename from internal/handler/api/v1/crm_frontend_smoke_test.go rename to backend/internal/handler/api/v1/crm_frontend_smoke_test.go diff --git a/internal/handler/api/v1/crm_serializer.go b/backend/internal/handler/api/v1/crm_serializer.go similarity index 100% rename from internal/handler/api/v1/crm_serializer.go rename to backend/internal/handler/api/v1/crm_serializer.go diff --git a/internal/handler/api/v1/csat_metrics_handler.go b/backend/internal/handler/api/v1/csat_metrics_handler.go similarity index 100% rename from internal/handler/api/v1/csat_metrics_handler.go rename to backend/internal/handler/api/v1/csat_metrics_handler.go diff --git a/internal/handler/api/v1/csat_metrics_handler_test.go b/backend/internal/handler/api/v1/csat_metrics_handler_test.go similarity index 100% rename from internal/handler/api/v1/csat_metrics_handler_test.go rename to backend/internal/handler/api/v1/csat_metrics_handler_test.go diff --git a/internal/handler/api/v1/csat_survey_handler.go b/backend/internal/handler/api/v1/csat_survey_handler.go similarity index 100% rename from internal/handler/api/v1/csat_survey_handler.go rename to backend/internal/handler/api/v1/csat_survey_handler.go diff --git a/internal/handler/api/v1/csat_survey_handler_test.go b/backend/internal/handler/api/v1/csat_survey_handler_test.go similarity index 100% rename from internal/handler/api/v1/csat_survey_handler_test.go rename to backend/internal/handler/api/v1/csat_survey_handler_test.go diff --git a/internal/handler/api/v1/csat_survey_handler_test.go_BAK b/backend/internal/handler/api/v1/csat_survey_handler_test.go_BAK similarity index 100% rename from internal/handler/api/v1/csat_survey_handler_test.go_BAK rename to backend/internal/handler/api/v1/csat_survey_handler_test.go_BAK diff --git a/internal/handler/api/v1/csat_survey_update_test.go b/backend/internal/handler/api/v1/csat_survey_update_test.go similarity index 100% rename from internal/handler/api/v1/csat_survey_update_test.go rename to backend/internal/handler/api/v1/csat_survey_update_test.go diff --git a/internal/handler/api/v1/custom_attribute_definition_handler.go b/backend/internal/handler/api/v1/custom_attribute_definition_handler.go similarity index 100% rename from internal/handler/api/v1/custom_attribute_definition_handler.go rename to backend/internal/handler/api/v1/custom_attribute_definition_handler.go diff --git a/internal/handler/api/v1/custom_attribute_definition_handler_test.go b/backend/internal/handler/api/v1/custom_attribute_definition_handler_test.go similarity index 100% rename from internal/handler/api/v1/custom_attribute_definition_handler_test.go rename to backend/internal/handler/api/v1/custom_attribute_definition_handler_test.go diff --git a/internal/handler/api/v1/custom_attribute_definition_handler_test.go_BAK b/backend/internal/handler/api/v1/custom_attribute_definition_handler_test.go_BAK similarity index 100% rename from internal/handler/api/v1/custom_attribute_definition_handler_test.go_BAK rename to backend/internal/handler/api/v1/custom_attribute_definition_handler_test.go_BAK diff --git a/internal/handler/api/v1/custom_attribute_value_handler.go b/backend/internal/handler/api/v1/custom_attribute_value_handler.go similarity index 100% rename from internal/handler/api/v1/custom_attribute_value_handler.go rename to backend/internal/handler/api/v1/custom_attribute_value_handler.go diff --git a/internal/handler/api/v1/custom_attribute_value_handler_test.go b/backend/internal/handler/api/v1/custom_attribute_value_handler_test.go similarity index 100% rename from internal/handler/api/v1/custom_attribute_value_handler_test.go rename to backend/internal/handler/api/v1/custom_attribute_value_handler_test.go diff --git a/internal/handler/api/v1/custom_filter_handler.go b/backend/internal/handler/api/v1/custom_filter_handler.go similarity index 100% rename from internal/handler/api/v1/custom_filter_handler.go rename to backend/internal/handler/api/v1/custom_filter_handler.go diff --git a/internal/handler/api/v1/custom_filter_handler_test.go b/backend/internal/handler/api/v1/custom_filter_handler_test.go similarity index 100% rename from internal/handler/api/v1/custom_filter_handler_test.go rename to backend/internal/handler/api/v1/custom_filter_handler_test.go diff --git a/internal/handler/api/v1/custom_filter_handler_test.go_BAK b/backend/internal/handler/api/v1/custom_filter_handler_test.go_BAK similarity index 100% rename from internal/handler/api/v1/custom_filter_handler_test.go_BAK rename to backend/internal/handler/api/v1/custom_filter_handler_test.go_BAK diff --git a/internal/handler/api/v1/custom_role_handler.go b/backend/internal/handler/api/v1/custom_role_handler.go similarity index 100% rename from internal/handler/api/v1/custom_role_handler.go rename to backend/internal/handler/api/v1/custom_role_handler.go diff --git a/internal/handler/api/v1/custom_role_handler_test.go b/backend/internal/handler/api/v1/custom_role_handler_test.go similarity index 100% rename from internal/handler/api/v1/custom_role_handler_test.go rename to backend/internal/handler/api/v1/custom_role_handler_test.go diff --git a/internal/handler/api/v1/dashboard_app_handler.go b/backend/internal/handler/api/v1/dashboard_app_handler.go similarity index 100% rename from internal/handler/api/v1/dashboard_app_handler.go rename to backend/internal/handler/api/v1/dashboard_app_handler.go diff --git a/internal/handler/api/v1/dashboard_app_handler_test.go b/backend/internal/handler/api/v1/dashboard_app_handler_test.go similarity index 100% rename from internal/handler/api/v1/dashboard_app_handler_test.go rename to backend/internal/handler/api/v1/dashboard_app_handler_test.go diff --git a/internal/handler/api/v1/delivery_status_handler.go b/backend/internal/handler/api/v1/delivery_status_handler.go similarity index 100% rename from internal/handler/api/v1/delivery_status_handler.go rename to backend/internal/handler/api/v1/delivery_status_handler.go diff --git a/internal/handler/api/v1/delivery_status_handler_test.go b/backend/internal/handler/api/v1/delivery_status_handler_test.go similarity index 100% rename from internal/handler/api/v1/delivery_status_handler_test.go rename to backend/internal/handler/api/v1/delivery_status_handler_test.go diff --git a/internal/handler/api/v1/draft_message_handler.go b/backend/internal/handler/api/v1/draft_message_handler.go similarity index 100% rename from internal/handler/api/v1/draft_message_handler.go rename to backend/internal/handler/api/v1/draft_message_handler.go diff --git a/internal/handler/api/v1/draft_message_handler_test.go b/backend/internal/handler/api/v1/draft_message_handler_test.go similarity index 100% rename from internal/handler/api/v1/draft_message_handler_test.go rename to backend/internal/handler/api/v1/draft_message_handler_test.go diff --git a/internal/handler/api/v1/draft_message_search_count_test.go b/backend/internal/handler/api/v1/draft_message_search_count_test.go similarity index 100% rename from internal/handler/api/v1/draft_message_search_count_test.go rename to backend/internal/handler/api/v1/draft_message_search_count_test.go diff --git a/internal/handler/api/v1/dyte_integration_handler.go b/backend/internal/handler/api/v1/dyte_integration_handler.go similarity index 100% rename from internal/handler/api/v1/dyte_integration_handler.go rename to backend/internal/handler/api/v1/dyte_integration_handler.go diff --git a/internal/handler/api/v1/dyte_integration_handler_test.go b/backend/internal/handler/api/v1/dyte_integration_handler_test.go similarity index 100% rename from internal/handler/api/v1/dyte_integration_handler_test.go rename to backend/internal/handler/api/v1/dyte_integration_handler_test.go diff --git a/internal/handler/api/v1/email_channel_handler.go b/backend/internal/handler/api/v1/email_channel_handler.go similarity index 100% rename from internal/handler/api/v1/email_channel_handler.go rename to backend/internal/handler/api/v1/email_channel_handler.go diff --git a/internal/handler/api/v1/email_channel_handler_test.go b/backend/internal/handler/api/v1/email_channel_handler_test.go similarity index 100% rename from internal/handler/api/v1/email_channel_handler_test.go rename to backend/internal/handler/api/v1/email_channel_handler_test.go diff --git a/internal/handler/api/v1/email_channel_migration_handler.go b/backend/internal/handler/api/v1/email_channel_migration_handler.go similarity index 100% rename from internal/handler/api/v1/email_channel_migration_handler.go rename to backend/internal/handler/api/v1/email_channel_migration_handler.go diff --git a/internal/handler/api/v1/email_channel_migration_handler_test.go b/backend/internal/handler/api/v1/email_channel_migration_handler_test.go similarity index 100% rename from internal/handler/api/v1/email_channel_migration_handler_test.go rename to backend/internal/handler/api/v1/email_channel_migration_handler_test.go diff --git a/internal/handler/api/v1/email_oauth_authorization.go b/backend/internal/handler/api/v1/email_oauth_authorization.go similarity index 100% rename from internal/handler/api/v1/email_oauth_authorization.go rename to backend/internal/handler/api/v1/email_oauth_authorization.go diff --git a/internal/handler/api/v1/email_oauth_authorization_test.go b/backend/internal/handler/api/v1/email_oauth_authorization_test.go similarity index 100% rename from internal/handler/api/v1/email_oauth_authorization_test.go rename to backend/internal/handler/api/v1/email_oauth_authorization_test.go diff --git a/internal/handler/api/v1/enterprise_account_handler.go b/backend/internal/handler/api/v1/enterprise_account_handler.go similarity index 100% rename from internal/handler/api/v1/enterprise_account_handler.go rename to backend/internal/handler/api/v1/enterprise_account_handler.go diff --git a/internal/handler/api/v1/enterprise_account_handler_test.go b/backend/internal/handler/api/v1/enterprise_account_handler_test.go similarity index 100% rename from internal/handler/api/v1/enterprise_account_handler_test.go rename to backend/internal/handler/api/v1/enterprise_account_handler_test.go diff --git a/internal/handler/api/v1/facebook_callbacks_handler_test.go b/backend/internal/handler/api/v1/facebook_callbacks_handler_test.go similarity index 100% rename from internal/handler/api/v1/facebook_callbacks_handler_test.go rename to backend/internal/handler/api/v1/facebook_callbacks_handler_test.go diff --git a/internal/handler/api/v1/facebook_channel_handler.go b/backend/internal/handler/api/v1/facebook_channel_handler.go similarity index 100% rename from internal/handler/api/v1/facebook_channel_handler.go rename to backend/internal/handler/api/v1/facebook_channel_handler.go diff --git a/internal/handler/api/v1/facebook_channel_handler.go.bak2 b/backend/internal/handler/api/v1/facebook_channel_handler.go.bak2 similarity index 100% rename from internal/handler/api/v1/facebook_channel_handler.go.bak2 rename to backend/internal/handler/api/v1/facebook_channel_handler.go.bak2 diff --git a/internal/handler/api/v1/facebook_channel_handler.go_BAK2 b/backend/internal/handler/api/v1/facebook_channel_handler.go_BAK2 similarity index 100% rename from internal/handler/api/v1/facebook_channel_handler.go_BAK2 rename to backend/internal/handler/api/v1/facebook_channel_handler.go_BAK2 diff --git a/internal/handler/api/v1/folder_handler.go b/backend/internal/handler/api/v1/folder_handler.go similarity index 100% rename from internal/handler/api/v1/folder_handler.go rename to backend/internal/handler/api/v1/folder_handler.go diff --git a/internal/handler/api/v1/folder_handler_test.go b/backend/internal/handler/api/v1/folder_handler_test.go similarity index 100% rename from internal/handler/api/v1/folder_handler_test.go rename to backend/internal/handler/api/v1/folder_handler_test.go diff --git a/internal/handler/api/v1/folder_handler_test.go_BAK b/backend/internal/handler/api/v1/folder_handler_test.go_BAK similarity index 100% rename from internal/handler/api/v1/folder_handler_test.go_BAK rename to backend/internal/handler/api/v1/folder_handler_test.go_BAK diff --git a/internal/handler/api/v1/google_channel_handler.go b/backend/internal/handler/api/v1/google_channel_handler.go similarity index 100% rename from internal/handler/api/v1/google_channel_handler.go rename to backend/internal/handler/api/v1/google_channel_handler.go diff --git a/internal/handler/api/v1/helpers.go b/backend/internal/handler/api/v1/helpers.go similarity index 100% rename from internal/handler/api/v1/helpers.go rename to backend/internal/handler/api/v1/helpers.go diff --git a/internal/handler/api/v1/inbox_agentbot_avatar_campaigns_test.go b/backend/internal/handler/api/v1/inbox_agentbot_avatar_campaigns_test.go similarity index 100% rename from internal/handler/api/v1/inbox_agentbot_avatar_campaigns_test.go rename to backend/internal/handler/api/v1/inbox_agentbot_avatar_campaigns_test.go diff --git a/internal/handler/api/v1/inbox_csat_template_handler.go b/backend/internal/handler/api/v1/inbox_csat_template_handler.go similarity index 100% rename from internal/handler/api/v1/inbox_csat_template_handler.go rename to backend/internal/handler/api/v1/inbox_csat_template_handler.go diff --git a/internal/handler/api/v1/inbox_csat_template_handler_test.go b/backend/internal/handler/api/v1/inbox_csat_template_handler_test.go similarity index 100% rename from internal/handler/api/v1/inbox_csat_template_handler_test.go rename to backend/internal/handler/api/v1/inbox_csat_template_handler_test.go diff --git a/internal/handler/api/v1/inbox_handler.go b/backend/internal/handler/api/v1/inbox_handler.go similarity index 100% rename from internal/handler/api/v1/inbox_handler.go rename to backend/internal/handler/api/v1/inbox_handler.go diff --git a/internal/handler/api/v1/inbox_handler_edge_test.go b/backend/internal/handler/api/v1/inbox_handler_edge_test.go similarity index 100% rename from internal/handler/api/v1/inbox_handler_edge_test.go rename to backend/internal/handler/api/v1/inbox_handler_edge_test.go diff --git a/internal/handler/api/v1/inbox_handler_parity_test.go b/backend/internal/handler/api/v1/inbox_handler_parity_test.go similarity index 100% rename from internal/handler/api/v1/inbox_handler_parity_test.go rename to backend/internal/handler/api/v1/inbox_handler_parity_test.go diff --git a/internal/handler/api/v1/inbox_handler_test.go b/backend/internal/handler/api/v1/inbox_handler_test.go similarity index 100% rename from internal/handler/api/v1/inbox_handler_test.go rename to backend/internal/handler/api/v1/inbox_handler_test.go diff --git a/internal/handler/api/v1/inbox_handler_test.go_BAK b/backend/internal/handler/api/v1/inbox_handler_test.go_BAK similarity index 100% rename from internal/handler/api/v1/inbox_handler_test.go_BAK rename to backend/internal/handler/api/v1/inbox_handler_test.go_BAK diff --git a/internal/handler/api/v1/inbox_limit_handler.go b/backend/internal/handler/api/v1/inbox_limit_handler.go similarity index 100% rename from internal/handler/api/v1/inbox_limit_handler.go rename to backend/internal/handler/api/v1/inbox_limit_handler.go diff --git a/internal/handler/api/v1/inbox_limit_handler_test.go b/backend/internal/handler/api/v1/inbox_limit_handler_test.go similarity index 100% rename from internal/handler/api/v1/inbox_limit_handler_test.go rename to backend/internal/handler/api/v1/inbox_limit_handler_test.go diff --git a/internal/handler/api/v1/inbox_member_handler.go b/backend/internal/handler/api/v1/inbox_member_handler.go similarity index 100% rename from internal/handler/api/v1/inbox_member_handler.go rename to backend/internal/handler/api/v1/inbox_member_handler.go diff --git a/internal/handler/api/v1/inbox_member_handler_test.go b/backend/internal/handler/api/v1/inbox_member_handler_test.go similarity index 100% rename from internal/handler/api/v1/inbox_member_handler_test.go rename to backend/internal/handler/api/v1/inbox_member_handler_test.go diff --git a/internal/handler/api/v1/inbox_member_handler_test.go_BAK b/backend/internal/handler/api/v1/inbox_member_handler_test.go_BAK similarity index 100% rename from internal/handler/api/v1/inbox_member_handler_test.go_BAK rename to backend/internal/handler/api/v1/inbox_member_handler_test.go_BAK diff --git a/internal/handler/api/v1/inbox_serializer.go b/backend/internal/handler/api/v1/inbox_serializer.go similarity index 100% rename from internal/handler/api/v1/inbox_serializer.go rename to backend/internal/handler/api/v1/inbox_serializer.go diff --git a/internal/handler/api/v1/instagram_channel_handler.go b/backend/internal/handler/api/v1/instagram_channel_handler.go similarity index 100% rename from internal/handler/api/v1/instagram_channel_handler.go rename to backend/internal/handler/api/v1/instagram_channel_handler.go diff --git a/internal/handler/api/v1/instagram_channel_handler.go_BAK2 b/backend/internal/handler/api/v1/instagram_channel_handler.go_BAK2 similarity index 100% rename from internal/handler/api/v1/instagram_channel_handler.go_BAK2 rename to backend/internal/handler/api/v1/instagram_channel_handler.go_BAK2 diff --git a/internal/handler/api/v1/installation_config_handler.go b/backend/internal/handler/api/v1/installation_config_handler.go similarity index 100% rename from internal/handler/api/v1/installation_config_handler.go rename to backend/internal/handler/api/v1/installation_config_handler.go diff --git a/internal/handler/api/v1/installation_config_handler_test.go b/backend/internal/handler/api/v1/installation_config_handler_test.go similarity index 100% rename from internal/handler/api/v1/installation_config_handler_test.go rename to backend/internal/handler/api/v1/installation_config_handler_test.go diff --git a/internal/handler/api/v1/integration_hook_handler.go b/backend/internal/handler/api/v1/integration_hook_handler.go similarity index 100% rename from internal/handler/api/v1/integration_hook_handler.go rename to backend/internal/handler/api/v1/integration_hook_handler.go diff --git a/internal/handler/api/v1/integration_hook_handler_suite_test.go b/backend/internal/handler/api/v1/integration_hook_handler_suite_test.go similarity index 100% rename from internal/handler/api/v1/integration_hook_handler_suite_test.go rename to backend/internal/handler/api/v1/integration_hook_handler_suite_test.go diff --git a/internal/handler/api/v1/integration_hook_handler_test.go b/backend/internal/handler/api/v1/integration_hook_handler_test.go similarity index 100% rename from internal/handler/api/v1/integration_hook_handler_test.go rename to backend/internal/handler/api/v1/integration_hook_handler_test.go diff --git a/internal/handler/api/v1/label_handler.go b/backend/internal/handler/api/v1/label_handler.go similarity index 100% rename from internal/handler/api/v1/label_handler.go rename to backend/internal/handler/api/v1/label_handler.go diff --git a/internal/handler/api/v1/label_handler_test.go b/backend/internal/handler/api/v1/label_handler_test.go similarity index 100% rename from internal/handler/api/v1/label_handler_test.go rename to backend/internal/handler/api/v1/label_handler_test.go diff --git a/internal/handler/api/v1/ldap_handler.go b/backend/internal/handler/api/v1/ldap_handler.go similarity index 100% rename from internal/handler/api/v1/ldap_handler.go rename to backend/internal/handler/api/v1/ldap_handler.go diff --git a/internal/handler/api/v1/line_channel_handler.go b/backend/internal/handler/api/v1/line_channel_handler.go similarity index 100% rename from internal/handler/api/v1/line_channel_handler.go rename to backend/internal/handler/api/v1/line_channel_handler.go diff --git a/internal/handler/api/v1/line_channel_handler_test.go b/backend/internal/handler/api/v1/line_channel_handler_test.go similarity index 100% rename from internal/handler/api/v1/line_channel_handler_test.go rename to backend/internal/handler/api/v1/line_channel_handler_test.go diff --git a/internal/handler/api/v1/linear_integration_handler.go b/backend/internal/handler/api/v1/linear_integration_handler.go similarity index 100% rename from internal/handler/api/v1/linear_integration_handler.go rename to backend/internal/handler/api/v1/linear_integration_handler.go diff --git a/internal/handler/api/v1/linear_integration_handler_test.go b/backend/internal/handler/api/v1/linear_integration_handler_test.go similarity index 100% rename from internal/handler/api/v1/linear_integration_handler_test.go rename to backend/internal/handler/api/v1/linear_integration_handler_test.go diff --git a/internal/handler/api/v1/linear_integration_handler_test.go.bak b/backend/internal/handler/api/v1/linear_integration_handler_test.go.bak similarity index 100% rename from internal/handler/api/v1/linear_integration_handler_test.go.bak rename to backend/internal/handler/api/v1/linear_integration_handler_test.go.bak diff --git a/internal/handler/api/v1/linear_integration_handler_test.go.bak2 b/backend/internal/handler/api/v1/linear_integration_handler_test.go.bak2 similarity index 100% rename from internal/handler/api/v1/linear_integration_handler_test.go.bak2 rename to backend/internal/handler/api/v1/linear_integration_handler_test.go.bak2 diff --git a/internal/handler/api/v1/live_report_handler.go b/backend/internal/handler/api/v1/live_report_handler.go similarity index 100% rename from internal/handler/api/v1/live_report_handler.go rename to backend/internal/handler/api/v1/live_report_handler.go diff --git a/internal/handler/api/v1/live_report_handler_test.go b/backend/internal/handler/api/v1/live_report_handler_test.go similarity index 100% rename from internal/handler/api/v1/live_report_handler_test.go rename to backend/internal/handler/api/v1/live_report_handler_test.go diff --git a/internal/handler/api/v1/macro_handler.go b/backend/internal/handler/api/v1/macro_handler.go similarity index 100% rename from internal/handler/api/v1/macro_handler.go rename to backend/internal/handler/api/v1/macro_handler.go diff --git a/internal/handler/api/v1/macro_handler_test.go b/backend/internal/handler/api/v1/macro_handler_test.go similarity index 100% rename from internal/handler/api/v1/macro_handler_test.go rename to backend/internal/handler/api/v1/macro_handler_test.go diff --git a/internal/handler/api/v1/message_handler.go b/backend/internal/handler/api/v1/message_handler.go similarity index 100% rename from internal/handler/api/v1/message_handler.go rename to backend/internal/handler/api/v1/message_handler.go diff --git a/internal/handler/api/v1/message_handler_edge_test.go b/backend/internal/handler/api/v1/message_handler_edge_test.go similarity index 100% rename from internal/handler/api/v1/message_handler_edge_test.go rename to backend/internal/handler/api/v1/message_handler_edge_test.go diff --git a/internal/handler/api/v1/message_handler_test.go b/backend/internal/handler/api/v1/message_handler_test.go similarity index 100% rename from internal/handler/api/v1/message_handler_test.go rename to backend/internal/handler/api/v1/message_handler_test.go diff --git a/internal/handler/api/v1/message_handler_test.go_BAK b/backend/internal/handler/api/v1/message_handler_test.go_BAK similarity index 100% rename from internal/handler/api/v1/message_handler_test.go_BAK rename to backend/internal/handler/api/v1/message_handler_test.go_BAK diff --git a/internal/handler/api/v1/mfa_handler.go b/backend/internal/handler/api/v1/mfa_handler.go similarity index 100% rename from internal/handler/api/v1/mfa_handler.go rename to backend/internal/handler/api/v1/mfa_handler.go diff --git a/internal/handler/api/v1/mfa_handler_test.go b/backend/internal/handler/api/v1/mfa_handler_test.go similarity index 100% rename from internal/handler/api/v1/mfa_handler_test.go rename to backend/internal/handler/api/v1/mfa_handler_test.go diff --git a/internal/handler/api/v1/microsoft_channel_handler.go b/backend/internal/handler/api/v1/microsoft_channel_handler.go similarity index 100% rename from internal/handler/api/v1/microsoft_channel_handler.go rename to backend/internal/handler/api/v1/microsoft_channel_handler.go diff --git a/internal/handler/api/v1/note_handler.go b/backend/internal/handler/api/v1/note_handler.go similarity index 100% rename from internal/handler/api/v1/note_handler.go rename to backend/internal/handler/api/v1/note_handler.go diff --git a/internal/handler/api/v1/note_handler_test.go b/backend/internal/handler/api/v1/note_handler_test.go similarity index 100% rename from internal/handler/api/v1/note_handler_test.go rename to backend/internal/handler/api/v1/note_handler_test.go diff --git a/internal/handler/api/v1/notification_handler.go b/backend/internal/handler/api/v1/notification_handler.go similarity index 100% rename from internal/handler/api/v1/notification_handler.go rename to backend/internal/handler/api/v1/notification_handler.go diff --git a/internal/handler/api/v1/notification_handler_test.go b/backend/internal/handler/api/v1/notification_handler_test.go similarity index 100% rename from internal/handler/api/v1/notification_handler_test.go rename to backend/internal/handler/api/v1/notification_handler_test.go diff --git a/internal/handler/api/v1/notification_handler_test.go_BAK b/backend/internal/handler/api/v1/notification_handler_test.go_BAK similarity index 100% rename from internal/handler/api/v1/notification_handler_test.go_BAK rename to backend/internal/handler/api/v1/notification_handler_test.go_BAK diff --git a/internal/handler/api/v1/notification_setting_handler.go b/backend/internal/handler/api/v1/notification_setting_handler.go similarity index 100% rename from internal/handler/api/v1/notification_setting_handler.go rename to backend/internal/handler/api/v1/notification_setting_handler.go diff --git a/internal/handler/api/v1/notification_setting_handler_test.go b/backend/internal/handler/api/v1/notification_setting_handler_test.go similarity index 100% rename from internal/handler/api/v1/notification_setting_handler_test.go rename to backend/internal/handler/api/v1/notification_setting_handler_test.go diff --git a/internal/handler/api/v1/notification_subscription_handler.go b/backend/internal/handler/api/v1/notification_subscription_handler.go similarity index 100% rename from internal/handler/api/v1/notification_subscription_handler.go rename to backend/internal/handler/api/v1/notification_subscription_handler.go diff --git a/internal/handler/api/v1/notification_subscription_handler_test.go b/backend/internal/handler/api/v1/notification_subscription_handler_test.go similarity index 100% rename from internal/handler/api/v1/notification_subscription_handler_test.go rename to backend/internal/handler/api/v1/notification_subscription_handler_test.go diff --git a/internal/handler/api/v1/notion_integration_handler.go b/backend/internal/handler/api/v1/notion_integration_handler.go similarity index 100% rename from internal/handler/api/v1/notion_integration_handler.go rename to backend/internal/handler/api/v1/notion_integration_handler.go diff --git a/internal/handler/api/v1/notion_integration_handler_test.go b/backend/internal/handler/api/v1/notion_integration_handler_test.go similarity index 100% rename from internal/handler/api/v1/notion_integration_handler_test.go rename to backend/internal/handler/api/v1/notion_integration_handler_test.go diff --git a/internal/handler/api/v1/oidc_handler.go b/backend/internal/handler/api/v1/oidc_handler.go similarity index 100% rename from internal/handler/api/v1/oidc_handler.go rename to backend/internal/handler/api/v1/oidc_handler.go diff --git a/internal/handler/api/v1/platform_account_handler.go b/backend/internal/handler/api/v1/platform_account_handler.go similarity index 100% rename from internal/handler/api/v1/platform_account_handler.go rename to backend/internal/handler/api/v1/platform_account_handler.go diff --git a/internal/handler/api/v1/platform_account_user_handler.go b/backend/internal/handler/api/v1/platform_account_user_handler.go similarity index 100% rename from internal/handler/api/v1/platform_account_user_handler.go rename to backend/internal/handler/api/v1/platform_account_user_handler.go diff --git a/internal/handler/api/v1/platform_agent_bot_handler.go b/backend/internal/handler/api/v1/platform_agent_bot_handler.go similarity index 100% rename from internal/handler/api/v1/platform_agent_bot_handler.go rename to backend/internal/handler/api/v1/platform_agent_bot_handler.go diff --git a/internal/handler/api/v1/platform_agent_bot_handler_test.go b/backend/internal/handler/api/v1/platform_agent_bot_handler_test.go similarity index 100% rename from internal/handler/api/v1/platform_agent_bot_handler_test.go rename to backend/internal/handler/api/v1/platform_agent_bot_handler_test.go diff --git a/internal/handler/api/v1/platform_e2e_test.go b/backend/internal/handler/api/v1/platform_e2e_test.go similarity index 100% rename from internal/handler/api/v1/platform_e2e_test.go rename to backend/internal/handler/api/v1/platform_e2e_test.go diff --git a/internal/handler/api/v1/platform_handler.go b/backend/internal/handler/api/v1/platform_handler.go similarity index 100% rename from internal/handler/api/v1/platform_handler.go rename to backend/internal/handler/api/v1/platform_handler.go diff --git a/internal/handler/api/v1/platform_handler_test.go_BAK b/backend/internal/handler/api/v1/platform_handler_test.go_BAK similarity index 100% rename from internal/handler/api/v1/platform_handler_test.go_BAK rename to backend/internal/handler/api/v1/platform_handler_test.go_BAK diff --git a/internal/handler/api/v1/platform_user_handler.go b/backend/internal/handler/api/v1/platform_user_handler.go similarity index 100% rename from internal/handler/api/v1/platform_user_handler.go rename to backend/internal/handler/api/v1/platform_user_handler.go diff --git a/internal/handler/api/v1/platform_user_sso_handler.go b/backend/internal/handler/api/v1/platform_user_sso_handler.go similarity index 100% rename from internal/handler/api/v1/platform_user_sso_handler.go rename to backend/internal/handler/api/v1/platform_user_sso_handler.go diff --git a/internal/handler/api/v1/platform_user_sso_handler_test.go b/backend/internal/handler/api/v1/platform_user_sso_handler_test.go similarity index 100% rename from internal/handler/api/v1/platform_user_sso_handler_test.go rename to backend/internal/handler/api/v1/platform_user_sso_handler_test.go diff --git a/internal/handler/api/v1/portal_handler.go b/backend/internal/handler/api/v1/portal_handler.go similarity index 100% rename from internal/handler/api/v1/portal_handler.go rename to backend/internal/handler/api/v1/portal_handler.go diff --git a/internal/handler/api/v1/portal_handler_test.go b/backend/internal/handler/api/v1/portal_handler_test.go similarity index 100% rename from internal/handler/api/v1/portal_handler_test.go rename to backend/internal/handler/api/v1/portal_handler_test.go diff --git a/internal/handler/api/v1/portal_handler_test.go_BAK b/backend/internal/handler/api/v1/portal_handler_test.go_BAK similarity index 100% rename from internal/handler/api/v1/portal_handler_test.go_BAK rename to backend/internal/handler/api/v1/portal_handler_test.go_BAK diff --git a/internal/handler/api/v1/portal_member_handler.go b/backend/internal/handler/api/v1/portal_member_handler.go similarity index 100% rename from internal/handler/api/v1/portal_member_handler.go rename to backend/internal/handler/api/v1/portal_member_handler.go diff --git a/internal/handler/api/v1/portal_member_handler_test.go b/backend/internal/handler/api/v1/portal_member_handler_test.go similarity index 100% rename from internal/handler/api/v1/portal_member_handler_test.go rename to backend/internal/handler/api/v1/portal_member_handler_test.go diff --git a/internal/handler/api/v1/portal_member_handler_test.go_BAK b/backend/internal/handler/api/v1/portal_member_handler_test.go_BAK similarity index 100% rename from internal/handler/api/v1/portal_member_handler_test.go_BAK rename to backend/internal/handler/api/v1/portal_member_handler_test.go_BAK diff --git a/internal/handler/api/v1/profile_handler.go b/backend/internal/handler/api/v1/profile_handler.go similarity index 100% rename from internal/handler/api/v1/profile_handler.go rename to backend/internal/handler/api/v1/profile_handler.go diff --git a/internal/handler/api/v1/profile_handler_test.go b/backend/internal/handler/api/v1/profile_handler_test.go similarity index 100% rename from internal/handler/api/v1/profile_handler_test.go rename to backend/internal/handler/api/v1/profile_handler_test.go diff --git a/internal/handler/api/v1/push_subscription_handler.go b/backend/internal/handler/api/v1/push_subscription_handler.go similarity index 100% rename from internal/handler/api/v1/push_subscription_handler.go rename to backend/internal/handler/api/v1/push_subscription_handler.go diff --git a/internal/handler/api/v1/push_subscription_handler_test.go b/backend/internal/handler/api/v1/push_subscription_handler_test.go similarity index 100% rename from internal/handler/api/v1/push_subscription_handler_test.go rename to backend/internal/handler/api/v1/push_subscription_handler_test.go diff --git a/internal/handler/api/v1/rag_handler.go b/backend/internal/handler/api/v1/rag_handler.go similarity index 100% rename from internal/handler/api/v1/rag_handler.go rename to backend/internal/handler/api/v1/rag_handler.go diff --git a/internal/handler/api/v1/rag_handler_test.go b/backend/internal/handler/api/v1/rag_handler_test.go similarity index 100% rename from internal/handler/api/v1/rag_handler_test.go rename to backend/internal/handler/api/v1/rag_handler_test.go diff --git a/internal/handler/api/v1/reporting_event_handler.go b/backend/internal/handler/api/v1/reporting_event_handler.go similarity index 100% rename from internal/handler/api/v1/reporting_event_handler.go rename to backend/internal/handler/api/v1/reporting_event_handler.go diff --git a/internal/handler/api/v1/reporting_event_handler_test.go b/backend/internal/handler/api/v1/reporting_event_handler_test.go similarity index 100% rename from internal/handler/api/v1/reporting_event_handler_test.go rename to backend/internal/handler/api/v1/reporting_event_handler_test.go diff --git a/internal/handler/api/v1/saml_handler.go b/backend/internal/handler/api/v1/saml_handler.go similarity index 100% rename from internal/handler/api/v1/saml_handler.go rename to backend/internal/handler/api/v1/saml_handler.go diff --git a/internal/handler/api/v1/search_handler.go b/backend/internal/handler/api/v1/search_handler.go similarity index 100% rename from internal/handler/api/v1/search_handler.go rename to backend/internal/handler/api/v1/search_handler.go diff --git a/internal/handler/api/v1/search_handler_test.go b/backend/internal/handler/api/v1/search_handler_test.go similarity index 100% rename from internal/handler/api/v1/search_handler_test.go rename to backend/internal/handler/api/v1/search_handler_test.go diff --git a/internal/handler/api/v1/shopify_integration_handler.go b/backend/internal/handler/api/v1/shopify_integration_handler.go similarity index 100% rename from internal/handler/api/v1/shopify_integration_handler.go rename to backend/internal/handler/api/v1/shopify_integration_handler.go diff --git a/internal/handler/api/v1/shopify_integration_handler_test.go b/backend/internal/handler/api/v1/shopify_integration_handler_test.go similarity index 100% rename from internal/handler/api/v1/shopify_integration_handler_test.go rename to backend/internal/handler/api/v1/shopify_integration_handler_test.go diff --git a/internal/handler/api/v1/sla_policy_handler.go b/backend/internal/handler/api/v1/sla_policy_handler.go similarity index 100% rename from internal/handler/api/v1/sla_policy_handler.go rename to backend/internal/handler/api/v1/sla_policy_handler.go diff --git a/internal/handler/api/v1/sla_policy_handler_test.go b/backend/internal/handler/api/v1/sla_policy_handler_test.go similarity index 100% rename from internal/handler/api/v1/sla_policy_handler_test.go rename to backend/internal/handler/api/v1/sla_policy_handler_test.go diff --git a/internal/handler/api/v1/slack_integration_handler.go b/backend/internal/handler/api/v1/slack_integration_handler.go similarity index 100% rename from internal/handler/api/v1/slack_integration_handler.go rename to backend/internal/handler/api/v1/slack_integration_handler.go diff --git a/internal/handler/api/v1/slack_integration_handler_test.go b/backend/internal/handler/api/v1/slack_integration_handler_test.go similarity index 100% rename from internal/handler/api/v1/slack_integration_handler_test.go rename to backend/internal/handler/api/v1/slack_integration_handler_test.go diff --git a/internal/handler/api/v1/social_authorization.go b/backend/internal/handler/api/v1/social_authorization.go similarity index 100% rename from internal/handler/api/v1/social_authorization.go rename to backend/internal/handler/api/v1/social_authorization.go diff --git a/internal/handler/api/v1/social_authorization_test.go b/backend/internal/handler/api/v1/social_authorization_test.go similarity index 100% rename from internal/handler/api/v1/social_authorization_test.go rename to backend/internal/handler/api/v1/social_authorization_test.go diff --git a/internal/handler/api/v1/sse_event_handler.go b/backend/internal/handler/api/v1/sse_event_handler.go similarity index 100% rename from internal/handler/api/v1/sse_event_handler.go rename to backend/internal/handler/api/v1/sse_event_handler.go diff --git a/internal/handler/api/v1/sse_event_handler_test.go b/backend/internal/handler/api/v1/sse_event_handler_test.go similarity index 100% rename from internal/handler/api/v1/sse_event_handler_test.go rename to backend/internal/handler/api/v1/sse_event_handler_test.go diff --git a/internal/handler/api/v1/sse_stream_handler.go b/backend/internal/handler/api/v1/sse_stream_handler.go similarity index 100% rename from internal/handler/api/v1/sse_stream_handler.go rename to backend/internal/handler/api/v1/sse_stream_handler.go diff --git a/internal/handler/api/v1/sse_stream_handler.go_BAK3 b/backend/internal/handler/api/v1/sse_stream_handler.go_BAK3 similarity index 100% rename from internal/handler/api/v1/sse_stream_handler.go_BAK3 rename to backend/internal/handler/api/v1/sse_stream_handler.go_BAK3 diff --git a/internal/handler/api/v1/sse_stream_handler_test.go b/backend/internal/handler/api/v1/sse_stream_handler_test.go similarity index 100% rename from internal/handler/api/v1/sse_stream_handler_test.go rename to backend/internal/handler/api/v1/sse_stream_handler_test.go diff --git a/internal/handler/api/v1/sso_session_handler.go b/backend/internal/handler/api/v1/sso_session_handler.go similarity index 100% rename from internal/handler/api/v1/sso_session_handler.go rename to backend/internal/handler/api/v1/sso_session_handler.go diff --git a/internal/handler/api/v1/summary_report_handler.go b/backend/internal/handler/api/v1/summary_report_handler.go similarity index 100% rename from internal/handler/api/v1/summary_report_handler.go rename to backend/internal/handler/api/v1/summary_report_handler.go diff --git a/internal/handler/api/v1/summary_report_handler_test.go b/backend/internal/handler/api/v1/summary_report_handler_test.go similarity index 100% rename from internal/handler/api/v1/summary_report_handler_test.go rename to backend/internal/handler/api/v1/summary_report_handler_test.go diff --git a/internal/handler/api/v1/team_handler.go b/backend/internal/handler/api/v1/team_handler.go similarity index 100% rename from internal/handler/api/v1/team_handler.go rename to backend/internal/handler/api/v1/team_handler.go diff --git a/internal/handler/api/v1/team_handler_test.go b/backend/internal/handler/api/v1/team_handler_test.go similarity index 100% rename from internal/handler/api/v1/team_handler_test.go rename to backend/internal/handler/api/v1/team_handler_test.go diff --git a/internal/handler/api/v1/team_profile_handler_test.go_BAK b/backend/internal/handler/api/v1/team_profile_handler_test.go_BAK similarity index 100% rename from internal/handler/api/v1/team_profile_handler_test.go_BAK rename to backend/internal/handler/api/v1/team_profile_handler_test.go_BAK diff --git a/internal/handler/api/v1/test_helpers_auth.go b/backend/internal/handler/api/v1/test_helpers_auth.go similarity index 100% rename from internal/handler/api/v1/test_helpers_auth.go rename to backend/internal/handler/api/v1/test_helpers_auth.go diff --git a/internal/handler/api/v1/tiktok_channel_handler.go b/backend/internal/handler/api/v1/tiktok_channel_handler.go similarity index 100% rename from internal/handler/api/v1/tiktok_channel_handler.go rename to backend/internal/handler/api/v1/tiktok_channel_handler.go diff --git a/internal/handler/api/v1/tiktok_channel_handler_test.go b/backend/internal/handler/api/v1/tiktok_channel_handler_test.go similarity index 100% rename from internal/handler/api/v1/tiktok_channel_handler_test.go rename to backend/internal/handler/api/v1/tiktok_channel_handler_test.go diff --git a/internal/handler/api/v1/twilio_channel_handler.go b/backend/internal/handler/api/v1/twilio_channel_handler.go similarity index 100% rename from internal/handler/api/v1/twilio_channel_handler.go rename to backend/internal/handler/api/v1/twilio_channel_handler.go diff --git a/internal/handler/api/v1/twilio_channel_handler.go.bak b/backend/internal/handler/api/v1/twilio_channel_handler.go.bak similarity index 100% rename from internal/handler/api/v1/twilio_channel_handler.go.bak rename to backend/internal/handler/api/v1/twilio_channel_handler.go.bak diff --git a/internal/handler/api/v1/twilio_channel_handler_test.go b/backend/internal/handler/api/v1/twilio_channel_handler_test.go similarity index 100% rename from internal/handler/api/v1/twilio_channel_handler_test.go rename to backend/internal/handler/api/v1/twilio_channel_handler_test.go diff --git a/internal/handler/api/v1/twitter_authorization_handler_test.go b/backend/internal/handler/api/v1/twitter_authorization_handler_test.go similarity index 100% rename from internal/handler/api/v1/twitter_authorization_handler_test.go rename to backend/internal/handler/api/v1/twitter_authorization_handler_test.go diff --git a/internal/handler/api/v1/twitter_channel_handler.go b/backend/internal/handler/api/v1/twitter_channel_handler.go similarity index 100% rename from internal/handler/api/v1/twitter_channel_handler.go rename to backend/internal/handler/api/v1/twitter_channel_handler.go diff --git a/internal/handler/api/v1/twitter_channel_webhook_test.go b/backend/internal/handler/api/v1/twitter_channel_webhook_test.go similarity index 100% rename from internal/handler/api/v1/twitter_channel_webhook_test.go rename to backend/internal/handler/api/v1/twitter_channel_webhook_test.go diff --git a/internal/handler/api/v1/upload_handler.go b/backend/internal/handler/api/v1/upload_handler.go similarity index 100% rename from internal/handler/api/v1/upload_handler.go rename to backend/internal/handler/api/v1/upload_handler.go diff --git a/internal/handler/api/v1/upload_handler_test.go b/backend/internal/handler/api/v1/upload_handler_test.go similarity index 100% rename from internal/handler/api/v1/upload_handler_test.go rename to backend/internal/handler/api/v1/upload_handler_test.go diff --git a/internal/handler/api/v1/webhook_subscription_handler.go b/backend/internal/handler/api/v1/webhook_subscription_handler.go similarity index 100% rename from internal/handler/api/v1/webhook_subscription_handler.go rename to backend/internal/handler/api/v1/webhook_subscription_handler.go diff --git a/internal/handler/api/v1/webhook_subscription_handler_test.go b/backend/internal/handler/api/v1/webhook_subscription_handler_test.go similarity index 100% rename from internal/handler/api/v1/webhook_subscription_handler_test.go rename to backend/internal/handler/api/v1/webhook_subscription_handler_test.go diff --git a/internal/handler/api/v1/webwidget_handler.go b/backend/internal/handler/api/v1/webwidget_handler.go similarity index 100% rename from internal/handler/api/v1/webwidget_handler.go rename to backend/internal/handler/api/v1/webwidget_handler.go diff --git a/internal/handler/api/v1/webwidget_handler_test.go_BAK b/backend/internal/handler/api/v1/webwidget_handler_test.go_BAK similarity index 100% rename from internal/handler/api/v1/webwidget_handler_test.go_BAK rename to backend/internal/handler/api/v1/webwidget_handler_test.go_BAK diff --git a/internal/handler/api/v1/webwidget_offline_handler.go b/backend/internal/handler/api/v1/webwidget_offline_handler.go similarity index 100% rename from internal/handler/api/v1/webwidget_offline_handler.go rename to backend/internal/handler/api/v1/webwidget_offline_handler.go diff --git a/internal/handler/api/v1/webwidget_offline_handler_test.go b/backend/internal/handler/api/v1/webwidget_offline_handler_test.go similarity index 100% rename from internal/handler/api/v1/webwidget_offline_handler_test.go rename to backend/internal/handler/api/v1/webwidget_offline_handler_test.go diff --git a/internal/handler/api/v1/webwidget_offline_handler_test.go_BAK b/backend/internal/handler/api/v1/webwidget_offline_handler_test.go_BAK similarity index 100% rename from internal/handler/api/v1/webwidget_offline_handler_test.go_BAK rename to backend/internal/handler/api/v1/webwidget_offline_handler_test.go_BAK diff --git a/internal/handler/api/v1/webwidget_theme_handler.go b/backend/internal/handler/api/v1/webwidget_theme_handler.go similarity index 100% rename from internal/handler/api/v1/webwidget_theme_handler.go rename to backend/internal/handler/api/v1/webwidget_theme_handler.go diff --git a/internal/handler/api/v1/webwidget_theme_handler_test.go_BAK b/backend/internal/handler/api/v1/webwidget_theme_handler_test.go_BAK similarity index 100% rename from internal/handler/api/v1/webwidget_theme_handler_test.go_BAK rename to backend/internal/handler/api/v1/webwidget_theme_handler_test.go_BAK diff --git a/internal/handler/api/v1/whatsapp_call_handler.go b/backend/internal/handler/api/v1/whatsapp_call_handler.go similarity index 100% rename from internal/handler/api/v1/whatsapp_call_handler.go rename to backend/internal/handler/api/v1/whatsapp_call_handler.go diff --git a/internal/handler/api/v1/whatsapp_call_handler_test.go b/backend/internal/handler/api/v1/whatsapp_call_handler_test.go similarity index 100% rename from internal/handler/api/v1/whatsapp_call_handler_test.go rename to backend/internal/handler/api/v1/whatsapp_call_handler_test.go diff --git a/internal/handler/api/v1/widget_test_handler.go b/backend/internal/handler/api/v1/widget_test_handler.go similarity index 100% rename from internal/handler/api/v1/widget_test_handler.go rename to backend/internal/handler/api/v1/widget_test_handler.go diff --git a/internal/handler/api/v1/widget_test_handler_test.go b/backend/internal/handler/api/v1/widget_test_handler_test.go similarity index 100% rename from internal/handler/api/v1/widget_test_handler_test.go rename to backend/internal/handler/api/v1/widget_test_handler_test.go diff --git a/internal/handler/api/v1/working_hour_handler.go b/backend/internal/handler/api/v1/working_hour_handler.go similarity index 100% rename from internal/handler/api/v1/working_hour_handler.go rename to backend/internal/handler/api/v1/working_hour_handler.go diff --git a/internal/handler/api/v1/year_in_review_handler.go b/backend/internal/handler/api/v1/year_in_review_handler.go similarity index 100% rename from internal/handler/api/v1/year_in_review_handler.go rename to backend/internal/handler/api/v1/year_in_review_handler.go diff --git a/internal/handler/api/v1/year_in_review_handler_test.go b/backend/internal/handler/api/v1/year_in_review_handler_test.go similarity index 100% rename from internal/handler/api/v1/year_in_review_handler_test.go rename to backend/internal/handler/api/v1/year_in_review_handler_test.go diff --git a/internal/handler/api_v1/handlers.go b/backend/internal/handler/api_v1/handlers.go similarity index 100% rename from internal/handler/api_v1/handlers.go rename to backend/internal/handler/api_v1/handlers.go diff --git a/internal/handler/auth/auth.go b/backend/internal/handler/auth/auth.go similarity index 100% rename from internal/handler/auth/auth.go rename to backend/internal/handler/auth/auth.go diff --git a/internal/handler/health_handler.go b/backend/internal/handler/health_handler.go similarity index 100% rename from internal/handler/health_handler.go rename to backend/internal/handler/health_handler.go diff --git a/internal/handler/metrics_handler.go b/backend/internal/handler/metrics_handler.go similarity index 100% rename from internal/handler/metrics_handler.go rename to backend/internal/handler/metrics_handler.go diff --git a/internal/handler/webhook/email_webhook.go b/backend/internal/handler/webhook/email_webhook.go similarity index 100% rename from internal/handler/webhook/email_webhook.go rename to backend/internal/handler/webhook/email_webhook.go diff --git a/internal/handler/webhook/facebook_webhook.go b/backend/internal/handler/webhook/facebook_webhook.go similarity index 100% rename from internal/handler/webhook/facebook_webhook.go rename to backend/internal/handler/webhook/facebook_webhook.go diff --git a/internal/handler/webhook/facebook_webhook.go_BAK2 b/backend/internal/handler/webhook/facebook_webhook.go_BAK2 similarity index 100% rename from internal/handler/webhook/facebook_webhook.go_BAK2 rename to backend/internal/handler/webhook/facebook_webhook.go_BAK2 diff --git a/internal/handler/webhook/incoming_persister.go b/backend/internal/handler/webhook/incoming_persister.go similarity index 100% rename from internal/handler/webhook/incoming_persister.go rename to backend/internal/handler/webhook/incoming_persister.go diff --git a/internal/handler/webhook/incoming_persister_jobs.go b/backend/internal/handler/webhook/incoming_persister_jobs.go similarity index 100% rename from internal/handler/webhook/incoming_persister_jobs.go rename to backend/internal/handler/webhook/incoming_persister_jobs.go diff --git a/internal/handler/webhook/line_webhook.go b/backend/internal/handler/webhook/line_webhook.go similarity index 100% rename from internal/handler/webhook/line_webhook.go rename to backend/internal/handler/webhook/line_webhook.go diff --git a/internal/handler/webhook/shopify_webhook.go b/backend/internal/handler/webhook/shopify_webhook.go similarity index 100% rename from internal/handler/webhook/shopify_webhook.go rename to backend/internal/handler/webhook/shopify_webhook.go diff --git a/internal/handler/webhook/telegram_webhook.go b/backend/internal/handler/webhook/telegram_webhook.go similarity index 100% rename from internal/handler/webhook/telegram_webhook.go rename to backend/internal/handler/webhook/telegram_webhook.go diff --git a/internal/handler/webhook/tiktok_webhook.go b/backend/internal/handler/webhook/tiktok_webhook.go similarity index 100% rename from internal/handler/webhook/tiktok_webhook.go rename to backend/internal/handler/webhook/tiktok_webhook.go diff --git a/internal/handler/webhook/twilio_webhook.go b/backend/internal/handler/webhook/twilio_webhook.go similarity index 100% rename from internal/handler/webhook/twilio_webhook.go rename to backend/internal/handler/webhook/twilio_webhook.go diff --git a/internal/handler/webhook/webhook_handler.go b/backend/internal/handler/webhook/webhook_handler.go similarity index 100% rename from internal/handler/webhook/webhook_handler.go rename to backend/internal/handler/webhook/webhook_handler.go diff --git a/internal/handler/webhook/webhook_lookup_test.go b/backend/internal/handler/webhook/webhook_lookup_test.go similarity index 100% rename from internal/handler/webhook/webhook_lookup_test.go rename to backend/internal/handler/webhook/webhook_lookup_test.go diff --git a/internal/handler/webhook/whatsapp_webhook.go b/backend/internal/handler/webhook/whatsapp_webhook.go similarity index 100% rename from internal/handler/webhook/whatsapp_webhook.go rename to backend/internal/handler/webhook/whatsapp_webhook.go diff --git a/internal/handler/widget/widget_handler.go b/backend/internal/handler/widget/widget_handler.go similarity index 100% rename from internal/handler/widget/widget_handler.go rename to backend/internal/handler/widget/widget_handler.go diff --git a/internal/handler/widget/widget_handler_test.go b/backend/internal/handler/widget/widget_handler_test.go similarity index 100% rename from internal/handler/widget/widget_handler_test.go rename to backend/internal/handler/widget/widget_handler_test.go diff --git a/internal/handler/widget/widget_theme_handler.go b/backend/internal/handler/widget/widget_theme_handler.go similarity index 100% rename from internal/handler/widget/widget_theme_handler.go rename to backend/internal/handler/widget/widget_theme_handler.go diff --git a/internal/handler/widget/widget_theme_handler_test.go b/backend/internal/handler/widget/widget_theme_handler_test.go similarity index 100% rename from internal/handler/widget/widget_theme_handler_test.go rename to backend/internal/handler/widget/widget_theme_handler_test.go diff --git a/internal/handler/ws/handler.go b/backend/internal/handler/ws/handler.go similarity index 100% rename from internal/handler/ws/handler.go rename to backend/internal/handler/ws/handler.go diff --git a/internal/handler/ws/hub.go b/backend/internal/handler/ws/hub.go similarity index 100% rename from internal/handler/ws/hub.go rename to backend/internal/handler/ws/hub.go diff --git a/internal/handler/ws/protocol.go b/backend/internal/handler/ws/protocol.go similarity index 100% rename from internal/handler/ws/protocol.go rename to backend/internal/handler/ws/protocol.go diff --git a/internal/handler/ws/subscriber.go b/backend/internal/handler/ws/subscriber.go similarity index 100% rename from internal/handler/ws/subscriber.go rename to backend/internal/handler/ws/subscriber.go diff --git a/internal/llm/llm_test.go b/backend/internal/llm/llm_test.go similarity index 100% rename from internal/llm/llm_test.go rename to backend/internal/llm/llm_test.go diff --git a/internal/llm/openai_provider.go b/backend/internal/llm/openai_provider.go similarity index 100% rename from internal/llm/openai_provider.go rename to backend/internal/llm/openai_provider.go diff --git a/internal/llm/provider.go b/backend/internal/llm/provider.go similarity index 100% rename from internal/llm/provider.go rename to backend/internal/llm/provider.go diff --git a/internal/middleware/account_scope.go b/backend/internal/middleware/account_scope.go similarity index 100% rename from internal/middleware/account_scope.go rename to backend/internal/middleware/account_scope.go diff --git a/internal/middleware/account_scope_test.go b/backend/internal/middleware/account_scope_test.go similarity index 100% rename from internal/middleware/account_scope_test.go rename to backend/internal/middleware/account_scope_test.go diff --git a/internal/middleware/auth.go b/backend/internal/middleware/auth.go similarity index 100% rename from internal/middleware/auth.go rename to backend/internal/middleware/auth.go diff --git a/internal/middleware/auth_test.go b/backend/internal/middleware/auth_test.go similarity index 100% rename from internal/middleware/auth_test.go rename to backend/internal/middleware/auth_test.go diff --git a/internal/middleware/cors.go b/backend/internal/middleware/cors.go similarity index 100% rename from internal/middleware/cors.go rename to backend/internal/middleware/cors.go diff --git a/internal/middleware/cors_logger.go b/backend/internal/middleware/cors_logger.go similarity index 100% rename from internal/middleware/cors_logger.go rename to backend/internal/middleware/cors_logger.go diff --git a/internal/middleware/cors_test.go b/backend/internal/middleware/cors_test.go similarity index 100% rename from internal/middleware/cors_test.go rename to backend/internal/middleware/cors_test.go diff --git a/internal/middleware/csrf.go b/backend/internal/middleware/csrf.go similarity index 100% rename from internal/middleware/csrf.go rename to backend/internal/middleware/csrf.go diff --git a/internal/middleware/csrf_test.go b/backend/internal/middleware/csrf_test.go similarity index 100% rename from internal/middleware/csrf_test.go rename to backend/internal/middleware/csrf_test.go diff --git a/internal/middleware/feature_flag.go b/backend/internal/middleware/feature_flag.go similarity index 100% rename from internal/middleware/feature_flag.go rename to backend/internal/middleware/feature_flag.go diff --git a/internal/middleware/feature_flag_test.go b/backend/internal/middleware/feature_flag_test.go similarity index 100% rename from internal/middleware/feature_flag_test.go rename to backend/internal/middleware/feature_flag_test.go diff --git a/internal/middleware/logger.go b/backend/internal/middleware/logger.go similarity index 100% rename from internal/middleware/logger.go rename to backend/internal/middleware/logger.go diff --git a/internal/middleware/logger_recovery_test.go b/backend/internal/middleware/logger_recovery_test.go similarity index 100% rename from internal/middleware/logger_recovery_test.go rename to backend/internal/middleware/logger_recovery_test.go diff --git a/internal/middleware/platform_app_auth.go b/backend/internal/middleware/platform_app_auth.go similarity index 100% rename from internal/middleware/platform_app_auth.go rename to backend/internal/middleware/platform_app_auth.go diff --git a/internal/middleware/platform_app_auth_test.go b/backend/internal/middleware/platform_app_auth_test.go similarity index 100% rename from internal/middleware/platform_app_auth_test.go rename to backend/internal/middleware/platform_app_auth_test.go diff --git a/internal/middleware/policy.go b/backend/internal/middleware/policy.go similarity index 100% rename from internal/middleware/policy.go rename to backend/internal/middleware/policy.go diff --git a/internal/middleware/policy_test.go b/backend/internal/middleware/policy_test.go similarity index 100% rename from internal/middleware/policy_test.go rename to backend/internal/middleware/policy_test.go diff --git a/internal/middleware/rate_limit.go b/backend/internal/middleware/rate_limit.go similarity index 100% rename from internal/middleware/rate_limit.go rename to backend/internal/middleware/rate_limit.go diff --git a/internal/middleware/rate_limit_test.go b/backend/internal/middleware/rate_limit_test.go similarity index 100% rename from internal/middleware/rate_limit_test.go rename to backend/internal/middleware/rate_limit_test.go diff --git a/internal/middleware/recovery.go b/backend/internal/middleware/recovery.go similarity index 100% rename from internal/middleware/recovery.go rename to backend/internal/middleware/recovery.go diff --git a/internal/middleware/role_check.go b/backend/internal/middleware/role_check.go similarity index 100% rename from internal/middleware/role_check.go rename to backend/internal/middleware/role_check.go diff --git a/internal/middleware/role_check_test.go b/backend/internal/middleware/role_check_test.go similarity index 100% rename from internal/middleware/role_check_test.go rename to backend/internal/middleware/role_check_test.go diff --git a/internal/middleware/security_headers.go b/backend/internal/middleware/security_headers.go similarity index 100% rename from internal/middleware/security_headers.go rename to backend/internal/middleware/security_headers.go diff --git a/internal/middleware/security_headers_test.go b/backend/internal/middleware/security_headers_test.go similarity index 100% rename from internal/middleware/security_headers_test.go rename to backend/internal/middleware/security_headers_test.go diff --git a/internal/middleware/session.go b/backend/internal/middleware/session.go similarity index 100% rename from internal/middleware/session.go rename to backend/internal/middleware/session.go diff --git a/internal/middleware/session_test.go b/backend/internal/middleware/session_test.go similarity index 100% rename from internal/middleware/session_test.go rename to backend/internal/middleware/session_test.go diff --git a/internal/middleware/super_admin.go b/backend/internal/middleware/super_admin.go similarity index 100% rename from internal/middleware/super_admin.go rename to backend/internal/middleware/super_admin.go diff --git a/internal/middleware/super_admin_test.go b/backend/internal/middleware/super_admin_test.go similarity index 100% rename from internal/middleware/super_admin_test.go rename to backend/internal/middleware/super_admin_test.go diff --git a/internal/middleware/upload_security.go b/backend/internal/middleware/upload_security.go similarity index 100% rename from internal/middleware/upload_security.go rename to backend/internal/middleware/upload_security.go diff --git a/internal/middleware/upload_security_zip.go b/backend/internal/middleware/upload_security_zip.go similarity index 100% rename from internal/middleware/upload_security_zip.go rename to backend/internal/middleware/upload_security_zip.go diff --git a/internal/middleware/webhook_auth.go b/backend/internal/middleware/webhook_auth.go similarity index 100% rename from internal/middleware/webhook_auth.go rename to backend/internal/middleware/webhook_auth.go diff --git a/internal/middleware/webhook_auth_test.go b/backend/internal/middleware/webhook_auth_test.go similarity index 100% rename from internal/middleware/webhook_auth_test.go rename to backend/internal/middleware/webhook_auth_test.go diff --git a/internal/middleware/xss_protection.go b/backend/internal/middleware/xss_protection.go similarity index 100% rename from internal/middleware/xss_protection.go rename to backend/internal/middleware/xss_protection.go diff --git a/internal/middleware/xss_protection_test.go b/backend/internal/middleware/xss_protection_test.go similarity index 100% rename from internal/middleware/xss_protection_test.go rename to backend/internal/middleware/xss_protection_test.go diff --git a/internal/model/access_token.go b/backend/internal/model/access_token.go similarity index 100% rename from internal/model/access_token.go rename to backend/internal/model/access_token.go diff --git a/internal/model/access_token.go.txt b/backend/internal/model/access_token.go.txt similarity index 100% rename from internal/model/access_token.go.txt rename to backend/internal/model/access_token.go.txt diff --git a/internal/model/account.go b/backend/internal/model/account.go similarity index 100% rename from internal/model/account.go rename to backend/internal/model/account.go diff --git a/internal/model/account.go.txt b/backend/internal/model/account.go.txt similarity index 100% rename from internal/model/account.go.txt rename to backend/internal/model/account.go.txt diff --git a/internal/model/account_email.go b/backend/internal/model/account_email.go similarity index 100% rename from internal/model/account_email.go rename to backend/internal/model/account_email.go diff --git a/internal/model/account_ldap_settings.go b/backend/internal/model/account_ldap_settings.go similarity index 100% rename from internal/model/account_ldap_settings.go rename to backend/internal/model/account_ldap_settings.go diff --git a/internal/model/account_oidc_settings.go b/backend/internal/model/account_oidc_settings.go similarity index 100% rename from internal/model/account_oidc_settings.go rename to backend/internal/model/account_oidc_settings.go diff --git a/internal/model/account_saml_settings.go b/backend/internal/model/account_saml_settings.go similarity index 100% rename from internal/model/account_saml_settings.go rename to backend/internal/model/account_saml_settings.go diff --git a/internal/model/account_saml_settings.go.txt b/backend/internal/model/account_saml_settings.go.txt similarity index 100% rename from internal/model/account_saml_settings.go.txt rename to backend/internal/model/account_saml_settings.go.txt diff --git a/internal/model/account_user.go b/backend/internal/model/account_user.go similarity index 100% rename from internal/model/account_user.go rename to backend/internal/model/account_user.go diff --git a/internal/model/account_user.go.txt b/backend/internal/model/account_user.go.txt similarity index 100% rename from internal/model/account_user.go.txt rename to backend/internal/model/account_user.go.txt diff --git a/internal/model/agent_bot.go b/backend/internal/model/agent_bot.go similarity index 100% rename from internal/model/agent_bot.go rename to backend/internal/model/agent_bot.go diff --git a/internal/model/agent_bot.go.txt b/backend/internal/model/agent_bot.go.txt similarity index 100% rename from internal/model/agent_bot.go.txt rename to backend/internal/model/agent_bot.go.txt diff --git a/internal/model/agent_bot_inbox.go b/backend/internal/model/agent_bot_inbox.go similarity index 100% rename from internal/model/agent_bot_inbox.go rename to backend/internal/model/agent_bot_inbox.go diff --git a/internal/model/agent_bot_inbox.go.txt b/backend/internal/model/agent_bot_inbox.go.txt similarity index 100% rename from internal/model/agent_bot_inbox.go.txt rename to backend/internal/model/agent_bot_inbox.go.txt diff --git a/internal/model/agent_bot_presence_event.go b/backend/internal/model/agent_bot_presence_event.go similarity index 100% rename from internal/model/agent_bot_presence_event.go rename to backend/internal/model/agent_bot_presence_event.go diff --git a/internal/model/agent_bot_presence_event.go.txt b/backend/internal/model/agent_bot_presence_event.go.txt similarity index 100% rename from internal/model/agent_bot_presence_event.go.txt rename to backend/internal/model/agent_bot_presence_event.go.txt diff --git a/internal/model/agent_capacity_policy.go b/backend/internal/model/agent_capacity_policy.go similarity index 100% rename from internal/model/agent_capacity_policy.go rename to backend/internal/model/agent_capacity_policy.go diff --git a/internal/model/agent_capacity_policy.go.txt b/backend/internal/model/agent_capacity_policy.go.txt similarity index 100% rename from internal/model/agent_capacity_policy.go.txt rename to backend/internal/model/agent_capacity_policy.go.txt diff --git a/internal/model/applied_sla.go.txt b/backend/internal/model/applied_sla.go.txt similarity index 100% rename from internal/model/applied_sla.go.txt rename to backend/internal/model/applied_sla.go.txt diff --git a/internal/model/article.go b/backend/internal/model/article.go similarity index 100% rename from internal/model/article.go rename to backend/internal/model/article.go diff --git a/internal/model/article.go.txt b/backend/internal/model/article.go.txt similarity index 100% rename from internal/model/article.go.txt rename to backend/internal/model/article.go.txt diff --git a/internal/model/article_embedding.go b/backend/internal/model/article_embedding.go similarity index 100% rename from internal/model/article_embedding.go rename to backend/internal/model/article_embedding.go diff --git a/internal/model/article_embedding.go.txt b/backend/internal/model/article_embedding.go.txt similarity index 100% rename from internal/model/article_embedding.go.txt rename to backend/internal/model/article_embedding.go.txt diff --git a/internal/model/assignment_policy.go b/backend/internal/model/assignment_policy.go similarity index 100% rename from internal/model/assignment_policy.go rename to backend/internal/model/assignment_policy.go diff --git a/internal/model/assignment_policy_v2.go b/backend/internal/model/assignment_policy_v2.go similarity index 100% rename from internal/model/assignment_policy_v2.go rename to backend/internal/model/assignment_policy_v2.go diff --git a/internal/model/associations_test.go b/backend/internal/model/associations_test.go similarity index 100% rename from internal/model/associations_test.go rename to backend/internal/model/associations_test.go diff --git a/internal/model/attachment.go b/backend/internal/model/attachment.go similarity index 100% rename from internal/model/attachment.go rename to backend/internal/model/attachment.go diff --git a/internal/model/attachment.go.txt b/backend/internal/model/attachment.go.txt similarity index 100% rename from internal/model/attachment.go.txt rename to backend/internal/model/attachment.go.txt diff --git a/internal/model/audit.go b/backend/internal/model/audit.go similarity index 100% rename from internal/model/audit.go rename to backend/internal/model/audit.go diff --git a/internal/model/audit.go.txt b/backend/internal/model/audit.go.txt similarity index 100% rename from internal/model/audit.go.txt rename to backend/internal/model/audit.go.txt diff --git a/internal/model/auto_reply_rule_models.go b/backend/internal/model/auto_reply_rule_models.go similarity index 100% rename from internal/model/auto_reply_rule_models.go rename to backend/internal/model/auto_reply_rule_models.go diff --git a/internal/model/automation_action.go b/backend/internal/model/automation_action.go similarity index 100% rename from internal/model/automation_action.go rename to backend/internal/model/automation_action.go diff --git a/internal/model/automation_action.go.txt b/backend/internal/model/automation_action.go.txt similarity index 100% rename from internal/model/automation_action.go.txt rename to backend/internal/model/automation_action.go.txt diff --git a/internal/model/automation_rule.go.txt b/backend/internal/model/automation_rule.go.txt similarity index 100% rename from internal/model/automation_rule.go.txt rename to backend/internal/model/automation_rule.go.txt diff --git a/internal/model/background_job.go b/backend/internal/model/background_job.go similarity index 100% rename from internal/model/background_job.go rename to backend/internal/model/background_job.go diff --git a/internal/model/banner.go b/backend/internal/model/banner.go similarity index 100% rename from internal/model/banner.go rename to backend/internal/model/banner.go diff --git a/internal/model/banner.go.txt b/backend/internal/model/banner.go.txt similarity index 100% rename from internal/model/banner.go.txt rename to backend/internal/model/banner.go.txt diff --git a/internal/model/base.go b/backend/internal/model/base.go similarity index 100% rename from internal/model/base.go rename to backend/internal/model/base.go diff --git a/internal/model/base.go.txt b/backend/internal/model/base.go.txt similarity index 100% rename from internal/model/base.go.txt rename to backend/internal/model/base.go.txt diff --git a/internal/model/base_test.txt b/backend/internal/model/base_test.txt similarity index 100% rename from internal/model/base_test.txt rename to backend/internal/model/base_test.txt diff --git a/internal/model/bot_rule.go b/backend/internal/model/bot_rule.go similarity index 100% rename from internal/model/bot_rule.go rename to backend/internal/model/bot_rule.go diff --git a/internal/model/call.go b/backend/internal/model/call.go similarity index 100% rename from internal/model/call.go rename to backend/internal/model/call.go diff --git a/internal/model/call.go.txt b/backend/internal/model/call.go.txt similarity index 100% rename from internal/model/call.go.txt rename to backend/internal/model/call.go.txt diff --git a/internal/model/captain_assistant.go.txt b/backend/internal/model/captain_assistant.go.txt similarity index 100% rename from internal/model/captain_assistant.go.txt rename to backend/internal/model/captain_assistant.go.txt diff --git a/internal/model/captain_assistant_inbox.go b/backend/internal/model/captain_assistant_inbox.go similarity index 100% rename from internal/model/captain_assistant_inbox.go rename to backend/internal/model/captain_assistant_inbox.go diff --git a/internal/model/captain_assistant_inbox.go.txt b/backend/internal/model/captain_assistant_inbox.go.txt similarity index 100% rename from internal/model/captain_assistant_inbox.go.txt rename to backend/internal/model/captain_assistant_inbox.go.txt diff --git a/internal/model/captain_assistant_response.go.txt b/backend/internal/model/captain_assistant_response.go.txt similarity index 100% rename from internal/model/captain_assistant_response.go.txt rename to backend/internal/model/captain_assistant_response.go.txt diff --git a/internal/model/captain_custom_tool.go.txt b/backend/internal/model/captain_custom_tool.go.txt similarity index 100% rename from internal/model/captain_custom_tool.go.txt rename to backend/internal/model/captain_custom_tool.go.txt diff --git a/internal/model/captain_document.go.txt b/backend/internal/model/captain_document.go.txt similarity index 100% rename from internal/model/captain_document.go.txt rename to backend/internal/model/captain_document.go.txt diff --git a/internal/model/captain_models.go b/backend/internal/model/captain_models.go similarity index 100% rename from internal/model/captain_models.go rename to backend/internal/model/captain_models.go diff --git a/internal/model/captain_scenario.go.txt b/backend/internal/model/captain_scenario.go.txt similarity index 100% rename from internal/model/captain_scenario.go.txt rename to backend/internal/model/captain_scenario.go.txt diff --git a/internal/model/category.go b/backend/internal/model/category.go similarity index 100% rename from internal/model/category.go rename to backend/internal/model/category.go diff --git a/internal/model/category.go.txt b/backend/internal/model/category.go.txt similarity index 100% rename from internal/model/category.go.txt rename to backend/internal/model/category.go.txt diff --git a/internal/model/channel/api.go b/backend/internal/model/channel/api.go similarity index 100% rename from internal/model/channel/api.go rename to backend/internal/model/channel/api.go diff --git a/internal/model/channel/api.go.txt b/backend/internal/model/channel/api.go.txt similarity index 100% rename from internal/model/channel/api.go.txt rename to backend/internal/model/channel/api.go.txt diff --git a/internal/model/channel/channel_base.go b/backend/internal/model/channel/channel_base.go similarity index 100% rename from internal/model/channel/channel_base.go rename to backend/internal/model/channel/channel_base.go diff --git a/internal/model/channel/email.go b/backend/internal/model/channel/email.go similarity index 100% rename from internal/model/channel/email.go rename to backend/internal/model/channel/email.go diff --git a/internal/model/channel/email.go.txt b/backend/internal/model/channel/email.go.txt similarity index 100% rename from internal/model/channel/email.go.txt rename to backend/internal/model/channel/email.go.txt diff --git a/internal/model/channel/facebook.go b/backend/internal/model/channel/facebook.go similarity index 100% rename from internal/model/channel/facebook.go rename to backend/internal/model/channel/facebook.go diff --git a/internal/model/channel/facebook.go.txt b/backend/internal/model/channel/facebook.go.txt similarity index 100% rename from internal/model/channel/facebook.go.txt rename to backend/internal/model/channel/facebook.go.txt diff --git a/internal/model/channel/google.go b/backend/internal/model/channel/google.go similarity index 100% rename from internal/model/channel/google.go rename to backend/internal/model/channel/google.go diff --git a/internal/model/channel/instagram.go b/backend/internal/model/channel/instagram.go similarity index 100% rename from internal/model/channel/instagram.go rename to backend/internal/model/channel/instagram.go diff --git a/internal/model/channel/instagram.go.txt b/backend/internal/model/channel/instagram.go.txt similarity index 100% rename from internal/model/channel/instagram.go.txt rename to backend/internal/model/channel/instagram.go.txt diff --git a/internal/model/channel/line.go b/backend/internal/model/channel/line.go similarity index 100% rename from internal/model/channel/line.go rename to backend/internal/model/channel/line.go diff --git a/internal/model/channel/line.go.txt b/backend/internal/model/channel/line.go.txt similarity index 100% rename from internal/model/channel/line.go.txt rename to backend/internal/model/channel/line.go.txt diff --git a/internal/model/channel/microsoft.go b/backend/internal/model/channel/microsoft.go similarity index 100% rename from internal/model/channel/microsoft.go rename to backend/internal/model/channel/microsoft.go diff --git a/internal/model/channel/sms.go.txt b/backend/internal/model/channel/sms.go.txt similarity index 100% rename from internal/model/channel/sms.go.txt rename to backend/internal/model/channel/sms.go.txt diff --git a/internal/model/channel/telegram.go b/backend/internal/model/channel/telegram.go similarity index 100% rename from internal/model/channel/telegram.go rename to backend/internal/model/channel/telegram.go diff --git a/internal/model/channel/telegram.go.txt b/backend/internal/model/channel/telegram.go.txt similarity index 100% rename from internal/model/channel/telegram.go.txt rename to backend/internal/model/channel/telegram.go.txt diff --git a/internal/model/channel/tiktok.go b/backend/internal/model/channel/tiktok.go similarity index 100% rename from internal/model/channel/tiktok.go rename to backend/internal/model/channel/tiktok.go diff --git a/internal/model/channel/tiktok.go.txt b/backend/internal/model/channel/tiktok.go.txt similarity index 100% rename from internal/model/channel/tiktok.go.txt rename to backend/internal/model/channel/tiktok.go.txt diff --git a/internal/model/channel/twilio.go b/backend/internal/model/channel/twilio.go similarity index 100% rename from internal/model/channel/twilio.go rename to backend/internal/model/channel/twilio.go diff --git a/internal/model/channel/twilio_sms.go.txt b/backend/internal/model/channel/twilio_sms.go.txt similarity index 100% rename from internal/model/channel/twilio_sms.go.txt rename to backend/internal/model/channel/twilio_sms.go.txt diff --git a/internal/model/channel/twitter.go b/backend/internal/model/channel/twitter.go similarity index 100% rename from internal/model/channel/twitter.go rename to backend/internal/model/channel/twitter.go diff --git a/internal/model/channel/web_widget.go b/backend/internal/model/channel/web_widget.go similarity index 100% rename from internal/model/channel/web_widget.go rename to backend/internal/model/channel/web_widget.go diff --git a/internal/model/channel/web_widget.go.txt b/backend/internal/model/channel/web_widget.go.txt similarity index 100% rename from internal/model/channel/web_widget.go.txt rename to backend/internal/model/channel/web_widget.go.txt diff --git a/internal/model/channel/whatsapp.go b/backend/internal/model/channel/whatsapp.go similarity index 100% rename from internal/model/channel/whatsapp.go rename to backend/internal/model/channel/whatsapp.go diff --git a/internal/model/channel/whatsapp.go.txt b/backend/internal/model/channel/whatsapp.go.txt similarity index 100% rename from internal/model/channel/whatsapp.go.txt rename to backend/internal/model/channel/whatsapp.go.txt diff --git a/internal/model/channelable.go b/backend/internal/model/channelable.go similarity index 100% rename from internal/model/channelable.go rename to backend/internal/model/channelable.go diff --git a/internal/model/channelable.go.txt b/backend/internal/model/channelable.go.txt similarity index 100% rename from internal/model/channelable.go.txt rename to backend/internal/model/channelable.go.txt diff --git a/internal/model/common.go b/backend/internal/model/common.go similarity index 100% rename from internal/model/common.go rename to backend/internal/model/common.go diff --git a/internal/model/company.go b/backend/internal/model/company.go similarity index 100% rename from internal/model/company.go rename to backend/internal/model/company.go diff --git a/internal/model/company.go.txt b/backend/internal/model/company.go.txt similarity index 100% rename from internal/model/company.go.txt rename to backend/internal/model/company.go.txt diff --git a/internal/model/company_note.go b/backend/internal/model/company_note.go similarity index 100% rename from internal/model/company_note.go rename to backend/internal/model/company_note.go diff --git a/internal/model/constraints_test.go b/backend/internal/model/constraints_test.go similarity index 100% rename from internal/model/constraints_test.go rename to backend/internal/model/constraints_test.go diff --git a/internal/model/contact.go b/backend/internal/model/contact.go similarity index 100% rename from internal/model/contact.go rename to backend/internal/model/contact.go diff --git a/internal/model/contact.go.txt b/backend/internal/model/contact.go.txt similarity index 100% rename from internal/model/contact.go.txt rename to backend/internal/model/contact.go.txt diff --git a/internal/model/contact_export.go b/backend/internal/model/contact_export.go similarity index 100% rename from internal/model/contact_export.go rename to backend/internal/model/contact_export.go diff --git a/internal/model/contact_inbox.go b/backend/internal/model/contact_inbox.go similarity index 100% rename from internal/model/contact_inbox.go rename to backend/internal/model/contact_inbox.go diff --git a/internal/model/contact_inbox.go.txt b/backend/internal/model/contact_inbox.go.txt similarity index 100% rename from internal/model/contact_inbox.go.txt rename to backend/internal/model/contact_inbox.go.txt diff --git a/internal/model/contact_label.go b/backend/internal/model/contact_label.go similarity index 100% rename from internal/model/contact_label.go rename to backend/internal/model/contact_label.go diff --git a/internal/model/contact_merge.go b/backend/internal/model/contact_merge.go similarity index 100% rename from internal/model/contact_merge.go rename to backend/internal/model/contact_merge.go diff --git a/internal/model/contact_note.go b/backend/internal/model/contact_note.go similarity index 100% rename from internal/model/contact_note.go rename to backend/internal/model/contact_note.go diff --git a/internal/model/contact_note.go.txt b/backend/internal/model/contact_note.go.txt similarity index 100% rename from internal/model/contact_note.go.txt rename to backend/internal/model/contact_note.go.txt diff --git a/internal/model/contactable.go b/backend/internal/model/contactable.go similarity index 100% rename from internal/model/contactable.go rename to backend/internal/model/contactable.go diff --git a/internal/model/contactable.go.txt b/backend/internal/model/contactable.go.txt similarity index 100% rename from internal/model/contactable.go.txt rename to backend/internal/model/contactable.go.txt diff --git a/internal/model/conversation.go b/backend/internal/model/conversation.go similarity index 100% rename from internal/model/conversation.go rename to backend/internal/model/conversation.go diff --git a/internal/model/conversation.go.txt b/backend/internal/model/conversation.go.txt similarity index 100% rename from internal/model/conversation.go.txt rename to backend/internal/model/conversation.go.txt diff --git a/internal/model/conversation_label.go b/backend/internal/model/conversation_label.go similarity index 100% rename from internal/model/conversation_label.go rename to backend/internal/model/conversation_label.go diff --git a/internal/model/conversation_participant.go b/backend/internal/model/conversation_participant.go similarity index 100% rename from internal/model/conversation_participant.go rename to backend/internal/model/conversation_participant.go diff --git a/internal/model/copilot_message.go.txt b/backend/internal/model/copilot_message.go.txt similarity index 100% rename from internal/model/copilot_message.go.txt rename to backend/internal/model/copilot_message.go.txt diff --git a/internal/model/copilot_models.go b/backend/internal/model/copilot_models.go similarity index 100% rename from internal/model/copilot_models.go rename to backend/internal/model/copilot_models.go diff --git a/internal/model/copilot_thread.go.txt b/backend/internal/model/copilot_thread.go.txt similarity index 100% rename from internal/model/copilot_thread.go.txt rename to backend/internal/model/copilot_thread.go.txt diff --git a/internal/model/crud_test.go b/backend/internal/model/crud_test.go similarity index 100% rename from internal/model/crud_test.go rename to backend/internal/model/crud_test.go diff --git a/internal/model/csat_template.go b/backend/internal/model/csat_template.go similarity index 100% rename from internal/model/csat_template.go rename to backend/internal/model/csat_template.go diff --git a/internal/model/custom_attribute_definition.go b/backend/internal/model/custom_attribute_definition.go similarity index 100% rename from internal/model/custom_attribute_definition.go rename to backend/internal/model/custom_attribute_definition.go diff --git a/internal/model/custom_filter.go b/backend/internal/model/custom_filter.go similarity index 100% rename from internal/model/custom_filter.go rename to backend/internal/model/custom_filter.go diff --git a/internal/model/custom_role.go b/backend/internal/model/custom_role.go similarity index 100% rename from internal/model/custom_role.go rename to backend/internal/model/custom_role.go diff --git a/internal/model/custom_role.go.txt b/backend/internal/model/custom_role.go.txt similarity index 100% rename from internal/model/custom_role.go.txt rename to backend/internal/model/custom_role.go.txt diff --git a/internal/model/dashboard_app.go b/backend/internal/model/dashboard_app.go similarity index 100% rename from internal/model/dashboard_app.go rename to backend/internal/model/dashboard_app.go diff --git a/internal/model/dashboard_app.go.txt b/backend/internal/model/dashboard_app.go.txt similarity index 100% rename from internal/model/dashboard_app.go.txt rename to backend/internal/model/dashboard_app.go.txt diff --git a/internal/model/data_import.go b/backend/internal/model/data_import.go similarity index 100% rename from internal/model/data_import.go rename to backend/internal/model/data_import.go diff --git a/internal/model/data_import.go.txt b/backend/internal/model/data_import.go.txt similarity index 100% rename from internal/model/data_import.go.txt rename to backend/internal/model/data_import.go.txt diff --git a/internal/model/delivery_status.go b/backend/internal/model/delivery_status.go similarity index 100% rename from internal/model/delivery_status.go rename to backend/internal/model/delivery_status.go diff --git a/internal/model/direct_upload.go b/backend/internal/model/direct_upload.go similarity index 100% rename from internal/model/direct_upload.go rename to backend/internal/model/direct_upload.go diff --git a/internal/model/direct_upload_test.go b/backend/internal/model/direct_upload_test.go similarity index 100% rename from internal/model/direct_upload_test.go rename to backend/internal/model/direct_upload_test.go diff --git a/internal/model/draft_message.go b/backend/internal/model/draft_message.go similarity index 100% rename from internal/model/draft_message.go rename to backend/internal/model/draft_message.go diff --git a/internal/model/email_channel_migration.go b/backend/internal/model/email_channel_migration.go similarity index 100% rename from internal/model/email_channel_migration.go rename to backend/internal/model/email_channel_migration.go diff --git a/internal/model/email_template.go b/backend/internal/model/email_template.go similarity index 100% rename from internal/model/email_template.go rename to backend/internal/model/email_template.go diff --git a/internal/model/email_template.go.txt b/backend/internal/model/email_template.go.txt similarity index 100% rename from internal/model/email_template.go.txt rename to backend/internal/model/email_template.go.txt diff --git a/internal/model/enums.go b/backend/internal/model/enums.go similarity index 100% rename from internal/model/enums.go rename to backend/internal/model/enums.go diff --git a/internal/model/enums.go.txt b/backend/internal/model/enums.go.txt similarity index 100% rename from internal/model/enums.go.txt rename to backend/internal/model/enums.go.txt diff --git a/internal/model/folder.go b/backend/internal/model/folder.go similarity index 100% rename from internal/model/folder.go rename to backend/internal/model/folder.go diff --git a/internal/model/folder.go.txt b/backend/internal/model/folder.go.txt similarity index 100% rename from internal/model/folder.go.txt rename to backend/internal/model/folder.go.txt diff --git a/internal/model/inbox.go b/backend/internal/model/inbox.go similarity index 100% rename from internal/model/inbox.go rename to backend/internal/model/inbox.go diff --git a/internal/model/inbox.go.txt b/backend/internal/model/inbox.go.txt similarity index 100% rename from internal/model/inbox.go.txt rename to backend/internal/model/inbox.go.txt diff --git a/internal/model/inbox_limit.go b/backend/internal/model/inbox_limit.go similarity index 100% rename from internal/model/inbox_limit.go rename to backend/internal/model/inbox_limit.go diff --git a/internal/model/inbox_member.go b/backend/internal/model/inbox_member.go similarity index 100% rename from internal/model/inbox_member.go rename to backend/internal/model/inbox_member.go diff --git a/internal/model/inbox_member.go.txt b/backend/internal/model/inbox_member.go.txt similarity index 100% rename from internal/model/inbox_member.go.txt rename to backend/internal/model/inbox_member.go.txt diff --git a/internal/model/installation_config.go b/backend/internal/model/installation_config.go similarity index 100% rename from internal/model/installation_config.go rename to backend/internal/model/installation_config.go diff --git a/internal/model/installation_config.go.txt b/backend/internal/model/installation_config.go.txt similarity index 100% rename from internal/model/installation_config.go.txt rename to backend/internal/model/installation_config.go.txt diff --git a/internal/model/integration_hook.go b/backend/internal/model/integration_hook.go similarity index 100% rename from internal/model/integration_hook.go rename to backend/internal/model/integration_hook.go diff --git a/internal/model/json_helpers.go b/backend/internal/model/json_helpers.go similarity index 100% rename from internal/model/json_helpers.go rename to backend/internal/model/json_helpers.go diff --git a/internal/model/mention.go b/backend/internal/model/mention.go similarity index 100% rename from internal/model/mention.go rename to backend/internal/model/mention.go diff --git a/internal/model/message.go b/backend/internal/model/message.go similarity index 100% rename from internal/model/message.go rename to backend/internal/model/message.go diff --git a/internal/model/message.go.txt b/backend/internal/model/message.go.txt similarity index 100% rename from internal/model/message.go.txt rename to backend/internal/model/message.go.txt diff --git a/internal/model/message_reaction.go b/backend/internal/model/message_reaction.go similarity index 100% rename from internal/model/message_reaction.go rename to backend/internal/model/message_reaction.go diff --git a/internal/model/message_reaction.go.txt b/backend/internal/model/message_reaction.go.txt similarity index 100% rename from internal/model/message_reaction.go.txt rename to backend/internal/model/message_reaction.go.txt diff --git a/internal/model/methods_test.go b/backend/internal/model/methods_test.go similarity index 100% rename from internal/model/methods_test.go rename to backend/internal/model/methods_test.go diff --git a/internal/model/model_test.go b/backend/internal/model/model_test.go similarity index 100% rename from internal/model/model_test.go rename to backend/internal/model/model_test.go diff --git a/internal/model/note.go b/backend/internal/model/note.go similarity index 100% rename from internal/model/note.go rename to backend/internal/model/note.go diff --git a/internal/model/notification.go b/backend/internal/model/notification.go similarity index 100% rename from internal/model/notification.go rename to backend/internal/model/notification.go diff --git a/internal/model/notification.go.txt b/backend/internal/model/notification.go.txt similarity index 100% rename from internal/model/notification.go.txt rename to backend/internal/model/notification.go.txt diff --git a/internal/model/notification_preference.go b/backend/internal/model/notification_preference.go similarity index 100% rename from internal/model/notification_preference.go rename to backend/internal/model/notification_preference.go diff --git a/internal/model/notification_preference.go.txt b/backend/internal/model/notification_preference.go.txt similarity index 100% rename from internal/model/notification_preference.go.txt rename to backend/internal/model/notification_preference.go.txt diff --git a/internal/model/notification_setting.go b/backend/internal/model/notification_setting.go similarity index 100% rename from internal/model/notification_setting.go rename to backend/internal/model/notification_setting.go diff --git a/internal/model/notification_subscription.go b/backend/internal/model/notification_subscription.go similarity index 100% rename from internal/model/notification_subscription.go rename to backend/internal/model/notification_subscription.go diff --git a/internal/model/permissible.go b/backend/internal/model/permissible.go similarity index 100% rename from internal/model/permissible.go rename to backend/internal/model/permissible.go diff --git a/internal/model/permissible.go.txt b/backend/internal/model/permissible.go.txt similarity index 100% rename from internal/model/permissible.go.txt rename to backend/internal/model/permissible.go.txt diff --git a/internal/model/platform_app.go b/backend/internal/model/platform_app.go similarity index 100% rename from internal/model/platform_app.go rename to backend/internal/model/platform_app.go diff --git a/internal/model/platform_app.go.txt b/backend/internal/model/platform_app.go.txt similarity index 100% rename from internal/model/platform_app.go.txt rename to backend/internal/model/platform_app.go.txt diff --git a/internal/model/portal.go b/backend/internal/model/portal.go similarity index 100% rename from internal/model/portal.go rename to backend/internal/model/portal.go diff --git a/internal/model/portal.go.txt b/backend/internal/model/portal.go.txt similarity index 100% rename from internal/model/portal.go.txt rename to backend/internal/model/portal.go.txt diff --git a/internal/model/portal_member.go b/backend/internal/model/portal_member.go similarity index 100% rename from internal/model/portal_member.go rename to backend/internal/model/portal_member.go diff --git a/internal/model/portal_member.go.txt b/backend/internal/model/portal_member.go.txt similarity index 100% rename from internal/model/portal_member.go.txt rename to backend/internal/model/portal_member.go.txt diff --git a/internal/model/pre_chat_form.go b/backend/internal/model/pre_chat_form.go similarity index 100% rename from internal/model/pre_chat_form.go rename to backend/internal/model/pre_chat_form.go diff --git a/internal/model/push_token.go b/backend/internal/model/push_token.go similarity index 100% rename from internal/model/push_token.go rename to backend/internal/model/push_token.go diff --git a/internal/model/push_token.go.txt b/backend/internal/model/push_token.go.txt similarity index 100% rename from internal/model/push_token.go.txt rename to backend/internal/model/push_token.go.txt diff --git a/internal/model/related_category.go b/backend/internal/model/related_category.go similarity index 100% rename from internal/model/related_category.go rename to backend/internal/model/related_category.go diff --git a/internal/model/related_category.go.txt b/backend/internal/model/related_category.go.txt similarity index 100% rename from internal/model/related_category.go.txt rename to backend/internal/model/related_category.go.txt diff --git a/internal/model/report.go b/backend/internal/model/report.go similarity index 100% rename from internal/model/report.go rename to backend/internal/model/report.go diff --git a/internal/model/report.go.txt b/backend/internal/model/report.go.txt similarity index 100% rename from internal/model/report.go.txt rename to backend/internal/model/report.go.txt diff --git a/internal/model/reporting_event.go b/backend/internal/model/reporting_event.go similarity index 100% rename from internal/model/reporting_event.go rename to backend/internal/model/reporting_event.go diff --git a/internal/model/reporting_event.go.txt b/backend/internal/model/reporting_event.go.txt similarity index 100% rename from internal/model/reporting_event.go.txt rename to backend/internal/model/reporting_event.go.txt diff --git a/internal/model/saml_idp_config.go b/backend/internal/model/saml_idp_config.go similarity index 100% rename from internal/model/saml_idp_config.go rename to backend/internal/model/saml_idp_config.go diff --git a/internal/model/sla_event.go.txt b/backend/internal/model/sla_event.go.txt similarity index 100% rename from internal/model/sla_event.go.txt rename to backend/internal/model/sla_event.go.txt diff --git a/internal/model/sla_policy.go b/backend/internal/model/sla_policy.go similarity index 100% rename from internal/model/sla_policy.go rename to backend/internal/model/sla_policy.go diff --git a/internal/model/sla_policy.go.txt b/backend/internal/model/sla_policy.go.txt similarity index 100% rename from internal/model/sla_policy.go.txt rename to backend/internal/model/sla_policy.go.txt diff --git a/internal/model/sso_session.go b/backend/internal/model/sso_session.go similarity index 100% rename from internal/model/sso_session.go rename to backend/internal/model/sso_session.go diff --git a/internal/model/summary_report.go b/backend/internal/model/summary_report.go similarity index 100% rename from internal/model/summary_report.go rename to backend/internal/model/summary_report.go diff --git a/internal/model/tag.go b/backend/internal/model/tag.go similarity index 100% rename from internal/model/tag.go rename to backend/internal/model/tag.go diff --git a/internal/model/team.go b/backend/internal/model/team.go similarity index 100% rename from internal/model/team.go rename to backend/internal/model/team.go diff --git a/internal/model/team.go.txt b/backend/internal/model/team.go.txt similarity index 100% rename from internal/model/team.go.txt rename to backend/internal/model/team.go.txt diff --git a/internal/model/team_member.go b/backend/internal/model/team_member.go similarity index 100% rename from internal/model/team_member.go rename to backend/internal/model/team_member.go diff --git a/internal/model/team_member.go.txt b/backend/internal/model/team_member.go.txt similarity index 100% rename from internal/model/team_member.go.txt rename to backend/internal/model/team_member.go.txt diff --git a/internal/model/test_write.go b/backend/internal/model/test_write.go similarity index 100% rename from internal/model/test_write.go rename to backend/internal/model/test_write.go diff --git a/internal/model/user.go b/backend/internal/model/user.go similarity index 100% rename from internal/model/user.go rename to backend/internal/model/user.go diff --git a/internal/model/user.go.txt b/backend/internal/model/user.go.txt similarity index 100% rename from internal/model/user.go.txt rename to backend/internal/model/user.go.txt diff --git a/internal/model/webhook_subscription.go b/backend/internal/model/webhook_subscription.go similarity index 100% rename from internal/model/webhook_subscription.go rename to backend/internal/model/webhook_subscription.go diff --git a/internal/model/whatsapp_call.go b/backend/internal/model/whatsapp_call.go similarity index 100% rename from internal/model/whatsapp_call.go rename to backend/internal/model/whatsapp_call.go diff --git a/internal/model/widget_file_upload.go b/backend/internal/model/widget_file_upload.go similarity index 100% rename from internal/model/widget_file_upload.go rename to backend/internal/model/widget_file_upload.go diff --git a/internal/model/widget_offline_message.go b/backend/internal/model/widget_offline_message.go similarity index 100% rename from internal/model/widget_offline_message.go rename to backend/internal/model/widget_offline_message.go diff --git a/internal/model/widget_test_scenario.go b/backend/internal/model/widget_test_scenario.go similarity index 100% rename from internal/model/widget_test_scenario.go rename to backend/internal/model/widget_test_scenario.go diff --git a/internal/model/widget_theme_config.go b/backend/internal/model/widget_theme_config.go similarity index 100% rename from internal/model/widget_theme_config.go rename to backend/internal/model/widget_theme_config.go diff --git a/internal/model/working_hour.go b/backend/internal/model/working_hour.go similarity index 100% rename from internal/model/working_hour.go rename to backend/internal/model/working_hour.go diff --git a/internal/pgvector_stub/go.mod b/backend/internal/pgvector_stub/go.mod similarity index 100% rename from internal/pgvector_stub/go.mod rename to backend/internal/pgvector_stub/go.mod diff --git a/internal/pgvector_stub/vector.go b/backend/internal/pgvector_stub/vector.go similarity index 100% rename from internal/pgvector_stub/vector.go rename to backend/internal/pgvector_stub/vector.go diff --git a/internal/pubsub/event_bus.go b/backend/internal/pubsub/event_bus.go similarity index 100% rename from internal/pubsub/event_bus.go rename to backend/internal/pubsub/event_bus.go diff --git a/internal/pubsub/event_bus_test.go b/backend/internal/pubsub/event_bus_test.go similarity index 100% rename from internal/pubsub/event_bus_test.go rename to backend/internal/pubsub/event_bus_test.go diff --git a/internal/pubsub/pubsub.go b/backend/internal/pubsub/pubsub.go similarity index 100% rename from internal/pubsub/pubsub.go rename to backend/internal/pubsub/pubsub.go diff --git a/internal/pubsub/pubsub_test.go b/backend/internal/pubsub/pubsub_test.go similarity index 100% rename from internal/pubsub/pubsub_test.go rename to backend/internal/pubsub/pubsub_test.go diff --git a/internal/pubsub/redis_pubsub.go b/backend/internal/pubsub/redis_pubsub.go similarity index 100% rename from internal/pubsub/redis_pubsub.go rename to backend/internal/pubsub/redis_pubsub.go diff --git a/internal/reporting/data_source.go b/backend/internal/reporting/data_source.go similarity index 100% rename from internal/reporting/data_source.go rename to backend/internal/reporting/data_source.go diff --git a/internal/reporting/listener.go b/backend/internal/reporting/listener.go similarity index 100% rename from internal/reporting/listener.go rename to backend/internal/reporting/listener.go diff --git a/internal/reporting/metric_registry.go b/backend/internal/reporting/metric_registry.go similarity index 100% rename from internal/reporting/metric_registry.go rename to backend/internal/reporting/metric_registry.go diff --git a/internal/reporting/model.go b/backend/internal/reporting/model.go similarity index 100% rename from internal/reporting/model.go rename to backend/internal/reporting/model.go diff --git a/internal/reporting/service.go b/backend/internal/reporting/service.go similarity index 100% rename from internal/reporting/service.go rename to backend/internal/reporting/service.go diff --git a/internal/repository/access_token_repo.go b/backend/internal/repository/access_token_repo.go similarity index 100% rename from internal/repository/access_token_repo.go rename to backend/internal/repository/access_token_repo.go diff --git a/internal/repository/access_token_repo_test.go b/backend/internal/repository/access_token_repo_test.go similarity index 100% rename from internal/repository/access_token_repo_test.go rename to backend/internal/repository/access_token_repo_test.go diff --git a/internal/repository/account_ldap_settings_repo.go b/backend/internal/repository/account_ldap_settings_repo.go similarity index 100% rename from internal/repository/account_ldap_settings_repo.go rename to backend/internal/repository/account_ldap_settings_repo.go diff --git a/internal/repository/account_oidc_settings_repo.go b/backend/internal/repository/account_oidc_settings_repo.go similarity index 100% rename from internal/repository/account_oidc_settings_repo.go rename to backend/internal/repository/account_oidc_settings_repo.go diff --git a/internal/repository/account_repo.go b/backend/internal/repository/account_repo.go similarity index 100% rename from internal/repository/account_repo.go rename to backend/internal/repository/account_repo.go diff --git a/internal/repository/account_repo_test.go b/backend/internal/repository/account_repo_test.go similarity index 100% rename from internal/repository/account_repo_test.go rename to backend/internal/repository/account_repo_test.go diff --git a/internal/repository/account_saml_settings_repo.go b/backend/internal/repository/account_saml_settings_repo.go similarity index 100% rename from internal/repository/account_saml_settings_repo.go rename to backend/internal/repository/account_saml_settings_repo.go diff --git a/internal/repository/account_user_repo.go b/backend/internal/repository/account_user_repo.go similarity index 100% rename from internal/repository/account_user_repo.go rename to backend/internal/repository/account_user_repo.go diff --git a/internal/repository/agent_bot_inbox_repo.go b/backend/internal/repository/agent_bot_inbox_repo.go similarity index 100% rename from internal/repository/agent_bot_inbox_repo.go rename to backend/internal/repository/agent_bot_inbox_repo.go diff --git a/internal/repository/agent_bot_inbox_repo_test.go b/backend/internal/repository/agent_bot_inbox_repo_test.go similarity index 100% rename from internal/repository/agent_bot_inbox_repo_test.go rename to backend/internal/repository/agent_bot_inbox_repo_test.go diff --git a/internal/repository/agent_bot_repo.go b/backend/internal/repository/agent_bot_repo.go similarity index 100% rename from internal/repository/agent_bot_repo.go rename to backend/internal/repository/agent_bot_repo.go diff --git a/internal/repository/agent_bot_repo_test.go b/backend/internal/repository/agent_bot_repo_test.go similarity index 100% rename from internal/repository/agent_bot_repo_test.go rename to backend/internal/repository/agent_bot_repo_test.go diff --git a/internal/repository/agent_capacity_policy_repo.go b/backend/internal/repository/agent_capacity_policy_repo.go similarity index 100% rename from internal/repository/agent_capacity_policy_repo.go rename to backend/internal/repository/agent_capacity_policy_repo.go diff --git a/internal/repository/agent_capacity_policy_repo_test.go b/backend/internal/repository/agent_capacity_policy_repo_test.go similarity index 100% rename from internal/repository/agent_capacity_policy_repo_test.go rename to backend/internal/repository/agent_capacity_policy_repo_test.go diff --git a/internal/repository/agent_repo.go b/backend/internal/repository/agent_repo.go similarity index 100% rename from internal/repository/agent_repo.go rename to backend/internal/repository/agent_repo.go diff --git a/internal/repository/article_repo.go b/backend/internal/repository/article_repo.go similarity index 100% rename from internal/repository/article_repo.go rename to backend/internal/repository/article_repo.go diff --git a/internal/repository/article_repo_test.go b/backend/internal/repository/article_repo_test.go similarity index 100% rename from internal/repository/article_repo_test.go rename to backend/internal/repository/article_repo_test.go diff --git a/internal/repository/assignment_policy_repo.go b/backend/internal/repository/assignment_policy_repo.go similarity index 100% rename from internal/repository/assignment_policy_repo.go rename to backend/internal/repository/assignment_policy_repo.go diff --git a/internal/repository/assignment_policy_repo_test.go.bak b/backend/internal/repository/assignment_policy_repo_test.go.bak similarity index 100% rename from internal/repository/assignment_policy_repo_test.go.bak rename to backend/internal/repository/assignment_policy_repo_test.go.bak diff --git a/internal/repository/assignment_policy_v2_repo.go b/backend/internal/repository/assignment_policy_v2_repo.go similarity index 100% rename from internal/repository/assignment_policy_v2_repo.go rename to backend/internal/repository/assignment_policy_v2_repo.go diff --git a/internal/repository/attachment_repo.go b/backend/internal/repository/attachment_repo.go similarity index 100% rename from internal/repository/attachment_repo.go rename to backend/internal/repository/attachment_repo.go diff --git a/internal/repository/attachment_repo_test.go b/backend/internal/repository/attachment_repo_test.go similarity index 100% rename from internal/repository/attachment_repo_test.go rename to backend/internal/repository/attachment_repo_test.go diff --git a/internal/repository/audit_repo.go b/backend/internal/repository/audit_repo.go similarity index 100% rename from internal/repository/audit_repo.go rename to backend/internal/repository/audit_repo.go diff --git a/internal/repository/audit_repo_test.go b/backend/internal/repository/audit_repo_test.go similarity index 100% rename from internal/repository/audit_repo_test.go rename to backend/internal/repository/audit_repo_test.go diff --git a/internal/repository/auto_reply_rule_repo.go b/backend/internal/repository/auto_reply_rule_repo.go similarity index 100% rename from internal/repository/auto_reply_rule_repo.go rename to backend/internal/repository/auto_reply_rule_repo.go diff --git a/internal/repository/auto_reply_rule_repo_test.go b/backend/internal/repository/auto_reply_rule_repo_test.go similarity index 100% rename from internal/repository/auto_reply_rule_repo_test.go rename to backend/internal/repository/auto_reply_rule_repo_test.go diff --git a/internal/repository/banner_repo.go b/backend/internal/repository/banner_repo.go similarity index 100% rename from internal/repository/banner_repo.go rename to backend/internal/repository/banner_repo.go diff --git a/internal/repository/benchmark_test.go b/backend/internal/repository/benchmark_test.go similarity index 100% rename from internal/repository/benchmark_test.go rename to backend/internal/repository/benchmark_test.go diff --git a/internal/repository/campaign_repo.go b/backend/internal/repository/campaign_repo.go similarity index 100% rename from internal/repository/campaign_repo.go rename to backend/internal/repository/campaign_repo.go diff --git a/internal/repository/captain_assistant_repo.go b/backend/internal/repository/captain_assistant_repo.go similarity index 100% rename from internal/repository/captain_assistant_repo.go rename to backend/internal/repository/captain_assistant_repo.go diff --git a/internal/repository/captain_assistant_repo_test.go b/backend/internal/repository/captain_assistant_repo_test.go similarity index 100% rename from internal/repository/captain_assistant_repo_test.go rename to backend/internal/repository/captain_assistant_repo_test.go diff --git a/internal/repository/captain_assistant_response_repo.go b/backend/internal/repository/captain_assistant_response_repo.go similarity index 100% rename from internal/repository/captain_assistant_response_repo.go rename to backend/internal/repository/captain_assistant_response_repo.go diff --git a/internal/repository/captain_assistant_response_repo_test.go b/backend/internal/repository/captain_assistant_response_repo_test.go similarity index 100% rename from internal/repository/captain_assistant_response_repo_test.go rename to backend/internal/repository/captain_assistant_response_repo_test.go diff --git a/internal/repository/captain_custom_tool_repo.go b/backend/internal/repository/captain_custom_tool_repo.go similarity index 100% rename from internal/repository/captain_custom_tool_repo.go rename to backend/internal/repository/captain_custom_tool_repo.go diff --git a/internal/repository/captain_custom_tool_repo_test.go b/backend/internal/repository/captain_custom_tool_repo_test.go similarity index 100% rename from internal/repository/captain_custom_tool_repo_test.go rename to backend/internal/repository/captain_custom_tool_repo_test.go diff --git a/internal/repository/captain_document_repo.go b/backend/internal/repository/captain_document_repo.go similarity index 100% rename from internal/repository/captain_document_repo.go rename to backend/internal/repository/captain_document_repo.go diff --git a/internal/repository/captain_document_repo_test.go b/backend/internal/repository/captain_document_repo_test.go similarity index 100% rename from internal/repository/captain_document_repo_test.go rename to backend/internal/repository/captain_document_repo_test.go diff --git a/internal/repository/captain_inbox_repo.go b/backend/internal/repository/captain_inbox_repo.go similarity index 100% rename from internal/repository/captain_inbox_repo.go rename to backend/internal/repository/captain_inbox_repo.go diff --git a/internal/repository/captain_inbox_repo_test.go b/backend/internal/repository/captain_inbox_repo_test.go similarity index 100% rename from internal/repository/captain_inbox_repo_test.go rename to backend/internal/repository/captain_inbox_repo_test.go diff --git a/internal/repository/captain_preference_repo.go b/backend/internal/repository/captain_preference_repo.go similarity index 100% rename from internal/repository/captain_preference_repo.go rename to backend/internal/repository/captain_preference_repo.go diff --git a/internal/repository/captain_preference_repo_test.go b/backend/internal/repository/captain_preference_repo_test.go similarity index 100% rename from internal/repository/captain_preference_repo_test.go rename to backend/internal/repository/captain_preference_repo_test.go diff --git a/internal/repository/captain_scenario_repo.go b/backend/internal/repository/captain_scenario_repo.go similarity index 100% rename from internal/repository/captain_scenario_repo.go rename to backend/internal/repository/captain_scenario_repo.go diff --git a/internal/repository/captain_scenario_repo_test.go b/backend/internal/repository/captain_scenario_repo_test.go similarity index 100% rename from internal/repository/captain_scenario_repo_test.go rename to backend/internal/repository/captain_scenario_repo_test.go diff --git a/internal/repository/category_repo.go b/backend/internal/repository/category_repo.go similarity index 100% rename from internal/repository/category_repo.go rename to backend/internal/repository/category_repo.go diff --git a/internal/repository/category_repo_test.go b/backend/internal/repository/category_repo_test.go similarity index 100% rename from internal/repository/category_repo_test.go rename to backend/internal/repository/category_repo_test.go diff --git a/internal/repository/channel_email_repo.go b/backend/internal/repository/channel_email_repo.go similarity index 100% rename from internal/repository/channel_email_repo.go rename to backend/internal/repository/channel_email_repo.go diff --git a/internal/repository/channel_facebook_repo.go b/backend/internal/repository/channel_facebook_repo.go similarity index 100% rename from internal/repository/channel_facebook_repo.go rename to backend/internal/repository/channel_facebook_repo.go diff --git a/internal/repository/channel_google_repo.go b/backend/internal/repository/channel_google_repo.go similarity index 100% rename from internal/repository/channel_google_repo.go rename to backend/internal/repository/channel_google_repo.go diff --git a/internal/repository/channel_instagram_repo.go b/backend/internal/repository/channel_instagram_repo.go similarity index 100% rename from internal/repository/channel_instagram_repo.go rename to backend/internal/repository/channel_instagram_repo.go diff --git a/internal/repository/channel_line_repo.go b/backend/internal/repository/channel_line_repo.go similarity index 100% rename from internal/repository/channel_line_repo.go rename to backend/internal/repository/channel_line_repo.go diff --git a/internal/repository/channel_microsoft_repo.go b/backend/internal/repository/channel_microsoft_repo.go similarity index 100% rename from internal/repository/channel_microsoft_repo.go rename to backend/internal/repository/channel_microsoft_repo.go diff --git a/internal/repository/channel_tiktok_repo.go b/backend/internal/repository/channel_tiktok_repo.go similarity index 100% rename from internal/repository/channel_tiktok_repo.go rename to backend/internal/repository/channel_tiktok_repo.go diff --git a/internal/repository/channel_twilio_repo.go b/backend/internal/repository/channel_twilio_repo.go similarity index 100% rename from internal/repository/channel_twilio_repo.go rename to backend/internal/repository/channel_twilio_repo.go diff --git a/internal/repository/channel_twilio_sms_repo.go b/backend/internal/repository/channel_twilio_sms_repo.go similarity index 100% rename from internal/repository/channel_twilio_sms_repo.go rename to backend/internal/repository/channel_twilio_sms_repo.go diff --git a/internal/repository/channel_twitter_repo.go b/backend/internal/repository/channel_twitter_repo.go similarity index 100% rename from internal/repository/channel_twitter_repo.go rename to backend/internal/repository/channel_twitter_repo.go diff --git a/internal/repository/company_repo.go b/backend/internal/repository/company_repo.go similarity index 100% rename from internal/repository/company_repo.go rename to backend/internal/repository/company_repo.go diff --git a/internal/repository/company_repo_test.go b/backend/internal/repository/company_repo_test.go similarity index 100% rename from internal/repository/company_repo_test.go rename to backend/internal/repository/company_repo_test.go diff --git a/internal/repository/contact_inbox_repo.go b/backend/internal/repository/contact_inbox_repo.go similarity index 100% rename from internal/repository/contact_inbox_repo.go rename to backend/internal/repository/contact_inbox_repo.go diff --git a/internal/repository/contact_inbox_repo_test.go b/backend/internal/repository/contact_inbox_repo_test.go similarity index 100% rename from internal/repository/contact_inbox_repo_test.go rename to backend/internal/repository/contact_inbox_repo_test.go diff --git a/internal/repository/contact_merge_repo.go b/backend/internal/repository/contact_merge_repo.go similarity index 100% rename from internal/repository/contact_merge_repo.go rename to backend/internal/repository/contact_merge_repo.go diff --git a/internal/repository/contact_note_repo.go b/backend/internal/repository/contact_note_repo.go similarity index 100% rename from internal/repository/contact_note_repo.go rename to backend/internal/repository/contact_note_repo.go diff --git a/internal/repository/contact_repo.go b/backend/internal/repository/contact_repo.go similarity index 100% rename from internal/repository/contact_repo.go rename to backend/internal/repository/contact_repo.go diff --git a/internal/repository/contact_repo_test.go b/backend/internal/repository/contact_repo_test.go similarity index 100% rename from internal/repository/contact_repo_test.go rename to backend/internal/repository/contact_repo_test.go diff --git a/internal/repository/conversation_label_repo.go b/backend/internal/repository/conversation_label_repo.go similarity index 100% rename from internal/repository/conversation_label_repo.go rename to backend/internal/repository/conversation_label_repo.go diff --git a/internal/repository/conversation_label_repo_test.go b/backend/internal/repository/conversation_label_repo_test.go similarity index 100% rename from internal/repository/conversation_label_repo_test.go rename to backend/internal/repository/conversation_label_repo_test.go diff --git a/internal/repository/conversation_participant_repo.go b/backend/internal/repository/conversation_participant_repo.go similarity index 100% rename from internal/repository/conversation_participant_repo.go rename to backend/internal/repository/conversation_participant_repo.go diff --git a/internal/repository/conversation_participant_repo_test.go b/backend/internal/repository/conversation_participant_repo_test.go similarity index 100% rename from internal/repository/conversation_participant_repo_test.go rename to backend/internal/repository/conversation_participant_repo_test.go diff --git a/internal/repository/conversation_repo.go b/backend/internal/repository/conversation_repo.go similarity index 100% rename from internal/repository/conversation_repo.go rename to backend/internal/repository/conversation_repo.go diff --git a/internal/repository/conversation_repo_pg_test.go b/backend/internal/repository/conversation_repo_pg_test.go similarity index 100% rename from internal/repository/conversation_repo_pg_test.go rename to backend/internal/repository/conversation_repo_pg_test.go diff --git a/internal/repository/conversation_repo_test.go b/backend/internal/repository/conversation_repo_test.go similarity index 100% rename from internal/repository/conversation_repo_test.go rename to backend/internal/repository/conversation_repo_test.go diff --git a/internal/repository/copilot_message_repo.go b/backend/internal/repository/copilot_message_repo.go similarity index 100% rename from internal/repository/copilot_message_repo.go rename to backend/internal/repository/copilot_message_repo.go diff --git a/internal/repository/copilot_message_repo_test.go b/backend/internal/repository/copilot_message_repo_test.go similarity index 100% rename from internal/repository/copilot_message_repo_test.go rename to backend/internal/repository/copilot_message_repo_test.go diff --git a/internal/repository/copilot_suggestion_repo.go b/backend/internal/repository/copilot_suggestion_repo.go similarity index 100% rename from internal/repository/copilot_suggestion_repo.go rename to backend/internal/repository/copilot_suggestion_repo.go diff --git a/internal/repository/copilot_thread_repo.go b/backend/internal/repository/copilot_thread_repo.go similarity index 100% rename from internal/repository/copilot_thread_repo.go rename to backend/internal/repository/copilot_thread_repo.go diff --git a/internal/repository/copilot_thread_repo_test.go b/backend/internal/repository/copilot_thread_repo_test.go similarity index 100% rename from internal/repository/copilot_thread_repo_test.go rename to backend/internal/repository/copilot_thread_repo_test.go diff --git a/internal/repository/csat_template_repo.go b/backend/internal/repository/csat_template_repo.go similarity index 100% rename from internal/repository/csat_template_repo.go rename to backend/internal/repository/csat_template_repo.go diff --git a/internal/repository/custom_attribute_definition_repo.go b/backend/internal/repository/custom_attribute_definition_repo.go similarity index 100% rename from internal/repository/custom_attribute_definition_repo.go rename to backend/internal/repository/custom_attribute_definition_repo.go diff --git a/internal/repository/custom_attribute_definition_repo_test.go b/backend/internal/repository/custom_attribute_definition_repo_test.go similarity index 100% rename from internal/repository/custom_attribute_definition_repo_test.go rename to backend/internal/repository/custom_attribute_definition_repo_test.go diff --git a/internal/repository/custom_filter_repo.go b/backend/internal/repository/custom_filter_repo.go similarity index 100% rename from internal/repository/custom_filter_repo.go rename to backend/internal/repository/custom_filter_repo.go diff --git a/internal/repository/custom_filter_repo_test.go b/backend/internal/repository/custom_filter_repo_test.go similarity index 100% rename from internal/repository/custom_filter_repo_test.go rename to backend/internal/repository/custom_filter_repo_test.go diff --git a/internal/repository/custom_role_repo.go b/backend/internal/repository/custom_role_repo.go similarity index 100% rename from internal/repository/custom_role_repo.go rename to backend/internal/repository/custom_role_repo.go diff --git a/internal/repository/custom_role_repo_test.go b/backend/internal/repository/custom_role_repo_test.go similarity index 100% rename from internal/repository/custom_role_repo_test.go rename to backend/internal/repository/custom_role_repo_test.go diff --git a/internal/repository/dashboard_app_repo.go b/backend/internal/repository/dashboard_app_repo.go similarity index 100% rename from internal/repository/dashboard_app_repo.go rename to backend/internal/repository/dashboard_app_repo.go diff --git a/internal/repository/dashboard_app_repo_test.go b/backend/internal/repository/dashboard_app_repo_test.go similarity index 100% rename from internal/repository/dashboard_app_repo_test.go rename to backend/internal/repository/dashboard_app_repo_test.go diff --git a/internal/repository/delivery_status_repo.go b/backend/internal/repository/delivery_status_repo.go similarity index 100% rename from internal/repository/delivery_status_repo.go rename to backend/internal/repository/delivery_status_repo.go diff --git a/internal/repository/direct_upload_repo.go b/backend/internal/repository/direct_upload_repo.go similarity index 100% rename from internal/repository/direct_upload_repo.go rename to backend/internal/repository/direct_upload_repo.go diff --git a/internal/repository/direct_upload_repo_test.go b/backend/internal/repository/direct_upload_repo_test.go similarity index 100% rename from internal/repository/direct_upload_repo_test.go rename to backend/internal/repository/direct_upload_repo_test.go diff --git a/internal/repository/draft_message_repo.go b/backend/internal/repository/draft_message_repo.go similarity index 100% rename from internal/repository/draft_message_repo.go rename to backend/internal/repository/draft_message_repo.go diff --git a/internal/repository/draft_message_repo_test.go b/backend/internal/repository/draft_message_repo_test.go similarity index 100% rename from internal/repository/draft_message_repo_test.go rename to backend/internal/repository/draft_message_repo_test.go diff --git a/internal/repository/email_channel_migration_repo.go b/backend/internal/repository/email_channel_migration_repo.go similarity index 100% rename from internal/repository/email_channel_migration_repo.go rename to backend/internal/repository/email_channel_migration_repo.go diff --git a/internal/repository/folder_repo.go b/backend/internal/repository/folder_repo.go similarity index 100% rename from internal/repository/folder_repo.go rename to backend/internal/repository/folder_repo.go diff --git a/internal/repository/folder_repo_test.go.bak b/backend/internal/repository/folder_repo_test.go.bak similarity index 100% rename from internal/repository/folder_repo_test.go.bak rename to backend/internal/repository/folder_repo_test.go.bak diff --git a/internal/repository/inbox_limit_repo.go b/backend/internal/repository/inbox_limit_repo.go similarity index 100% rename from internal/repository/inbox_limit_repo.go rename to backend/internal/repository/inbox_limit_repo.go diff --git a/internal/repository/inbox_member_repo.go b/backend/internal/repository/inbox_member_repo.go similarity index 100% rename from internal/repository/inbox_member_repo.go rename to backend/internal/repository/inbox_member_repo.go diff --git a/internal/repository/inbox_member_repo_test.go b/backend/internal/repository/inbox_member_repo_test.go similarity index 100% rename from internal/repository/inbox_member_repo_test.go rename to backend/internal/repository/inbox_member_repo_test.go diff --git a/internal/repository/inbox_repo.go b/backend/internal/repository/inbox_repo.go similarity index 100% rename from internal/repository/inbox_repo.go rename to backend/internal/repository/inbox_repo.go diff --git a/internal/repository/inbox_repo_test.go b/backend/internal/repository/inbox_repo_test.go similarity index 100% rename from internal/repository/inbox_repo_test.go rename to backend/internal/repository/inbox_repo_test.go diff --git a/internal/repository/installation_config_repo.go b/backend/internal/repository/installation_config_repo.go similarity index 100% rename from internal/repository/installation_config_repo.go rename to backend/internal/repository/installation_config_repo.go diff --git a/internal/repository/integration_hook_repo.go b/backend/internal/repository/integration_hook_repo.go similarity index 100% rename from internal/repository/integration_hook_repo.go rename to backend/internal/repository/integration_hook_repo.go diff --git a/internal/repository/integration_hook_repo_test.go b/backend/internal/repository/integration_hook_repo_test.go similarity index 100% rename from internal/repository/integration_hook_repo_test.go rename to backend/internal/repository/integration_hook_repo_test.go diff --git a/internal/repository/message_repo.go b/backend/internal/repository/message_repo.go similarity index 100% rename from internal/repository/message_repo.go rename to backend/internal/repository/message_repo.go diff --git a/internal/repository/message_repo_test.go b/backend/internal/repository/message_repo_test.go similarity index 100% rename from internal/repository/message_repo_test.go rename to backend/internal/repository/message_repo_test.go diff --git a/internal/repository/note_repo.go b/backend/internal/repository/note_repo.go similarity index 100% rename from internal/repository/note_repo.go rename to backend/internal/repository/note_repo.go diff --git a/internal/repository/notification_preference_repo.go b/backend/internal/repository/notification_preference_repo.go similarity index 100% rename from internal/repository/notification_preference_repo.go rename to backend/internal/repository/notification_preference_repo.go diff --git a/internal/repository/notification_preference_repo_test.go b/backend/internal/repository/notification_preference_repo_test.go similarity index 100% rename from internal/repository/notification_preference_repo_test.go rename to backend/internal/repository/notification_preference_repo_test.go diff --git a/internal/repository/notification_repo.go b/backend/internal/repository/notification_repo.go similarity index 100% rename from internal/repository/notification_repo.go rename to backend/internal/repository/notification_repo.go diff --git a/internal/repository/notification_repo_test.go b/backend/internal/repository/notification_repo_test.go similarity index 100% rename from internal/repository/notification_repo_test.go rename to backend/internal/repository/notification_repo_test.go diff --git a/internal/repository/notification_setting_repo.go b/backend/internal/repository/notification_setting_repo.go similarity index 100% rename from internal/repository/notification_setting_repo.go rename to backend/internal/repository/notification_setting_repo.go diff --git a/internal/repository/notification_subscription_repo.go b/backend/internal/repository/notification_subscription_repo.go similarity index 100% rename from internal/repository/notification_subscription_repo.go rename to backend/internal/repository/notification_subscription_repo.go diff --git a/internal/repository/permissible_repo.go b/backend/internal/repository/permissible_repo.go similarity index 100% rename from internal/repository/permissible_repo.go rename to backend/internal/repository/permissible_repo.go diff --git a/internal/repository/permissible_repo_test.go b/backend/internal/repository/permissible_repo_test.go similarity index 100% rename from internal/repository/permissible_repo_test.go rename to backend/internal/repository/permissible_repo_test.go diff --git a/internal/repository/platform_app_repo.go b/backend/internal/repository/platform_app_repo.go similarity index 100% rename from internal/repository/platform_app_repo.go rename to backend/internal/repository/platform_app_repo.go diff --git a/internal/repository/platform_app_repo_test.go b/backend/internal/repository/platform_app_repo_test.go similarity index 100% rename from internal/repository/platform_app_repo_test.go rename to backend/internal/repository/platform_app_repo_test.go diff --git a/internal/repository/portal_member_repo.go b/backend/internal/repository/portal_member_repo.go similarity index 100% rename from internal/repository/portal_member_repo.go rename to backend/internal/repository/portal_member_repo.go diff --git a/internal/repository/portal_member_repo_test.go.bak b/backend/internal/repository/portal_member_repo_test.go.bak similarity index 100% rename from internal/repository/portal_member_repo_test.go.bak rename to backend/internal/repository/portal_member_repo_test.go.bak diff --git a/internal/repository/portal_repo.go b/backend/internal/repository/portal_repo.go similarity index 100% rename from internal/repository/portal_repo.go rename to backend/internal/repository/portal_repo.go diff --git a/internal/repository/portal_repo_test.go b/backend/internal/repository/portal_repo_test.go similarity index 100% rename from internal/repository/portal_repo_test.go rename to backend/internal/repository/portal_repo_test.go diff --git a/internal/repository/pre_chat_form_repo.go b/backend/internal/repository/pre_chat_form_repo.go similarity index 100% rename from internal/repository/pre_chat_form_repo.go rename to backend/internal/repository/pre_chat_form_repo.go diff --git a/internal/repository/pre_chat_form_repo_test.go b/backend/internal/repository/pre_chat_form_repo_test.go similarity index 100% rename from internal/repository/pre_chat_form_repo_test.go rename to backend/internal/repository/pre_chat_form_repo_test.go diff --git a/internal/repository/push_token_repo.go b/backend/internal/repository/push_token_repo.go similarity index 100% rename from internal/repository/push_token_repo.go rename to backend/internal/repository/push_token_repo.go diff --git a/internal/repository/push_token_repo_test.go b/backend/internal/repository/push_token_repo_test.go similarity index 100% rename from internal/repository/push_token_repo_test.go rename to backend/internal/repository/push_token_repo_test.go diff --git a/internal/repository/related_category_repo.go b/backend/internal/repository/related_category_repo.go similarity index 100% rename from internal/repository/related_category_repo.go rename to backend/internal/repository/related_category_repo.go diff --git a/internal/repository/reporting_event_repo.go b/backend/internal/repository/reporting_event_repo.go similarity index 100% rename from internal/repository/reporting_event_repo.go rename to backend/internal/repository/reporting_event_repo.go diff --git a/internal/repository/reporting_event_repo_test.go b/backend/internal/repository/reporting_event_repo_test.go similarity index 100% rename from internal/repository/reporting_event_repo_test.go rename to backend/internal/repository/reporting_event_repo_test.go diff --git a/internal/repository/reporting_events_rollup_repo.go b/backend/internal/repository/reporting_events_rollup_repo.go similarity index 100% rename from internal/repository/reporting_events_rollup_repo.go rename to backend/internal/repository/reporting_events_rollup_repo.go diff --git a/internal/repository/reporting_events_rollup_repo_test.go b/backend/internal/repository/reporting_events_rollup_repo_test.go similarity index 100% rename from internal/repository/reporting_events_rollup_repo_test.go rename to backend/internal/repository/reporting_events_rollup_repo_test.go diff --git a/internal/repository/repository.go b/backend/internal/repository/repository.go similarity index 100% rename from internal/repository/repository.go rename to backend/internal/repository/repository.go diff --git a/internal/repository/repository_test.go b/backend/internal/repository/repository_test.go similarity index 100% rename from internal/repository/repository_test.go rename to backend/internal/repository/repository_test.go diff --git a/internal/repository/saml_idp_config_repo.go b/backend/internal/repository/saml_idp_config_repo.go similarity index 100% rename from internal/repository/saml_idp_config_repo.go rename to backend/internal/repository/saml_idp_config_repo.go diff --git a/internal/repository/search_repo.go b/backend/internal/repository/search_repo.go similarity index 100% rename from internal/repository/search_repo.go rename to backend/internal/repository/search_repo.go diff --git a/internal/repository/search_repo.go.bak b/backend/internal/repository/search_repo.go.bak similarity index 100% rename from internal/repository/search_repo.go.bak rename to backend/internal/repository/search_repo.go.bak diff --git a/internal/repository/search_repo_test.go b/backend/internal/repository/search_repo_test.go similarity index 100% rename from internal/repository/search_repo_test.go rename to backend/internal/repository/search_repo_test.go diff --git a/internal/repository/search_repo_test.go_BAK b/backend/internal/repository/search_repo_test.go_BAK similarity index 100% rename from internal/repository/search_repo_test.go_BAK rename to backend/internal/repository/search_repo_test.go_BAK diff --git a/internal/repository/sla_policy_repo.go b/backend/internal/repository/sla_policy_repo.go similarity index 100% rename from internal/repository/sla_policy_repo.go rename to backend/internal/repository/sla_policy_repo.go diff --git a/internal/repository/sso_session_repo.go b/backend/internal/repository/sso_session_repo.go similarity index 100% rename from internal/repository/sso_session_repo.go rename to backend/internal/repository/sso_session_repo.go diff --git a/internal/repository/summary_report_repo.go b/backend/internal/repository/summary_report_repo.go similarity index 100% rename from internal/repository/summary_report_repo.go rename to backend/internal/repository/summary_report_repo.go diff --git a/internal/repository/summary_report_repo_test.go b/backend/internal/repository/summary_report_repo_test.go similarity index 100% rename from internal/repository/summary_report_repo_test.go rename to backend/internal/repository/summary_report_repo_test.go diff --git a/internal/repository/tag_repo.go b/backend/internal/repository/tag_repo.go similarity index 100% rename from internal/repository/tag_repo.go rename to backend/internal/repository/tag_repo.go diff --git a/internal/repository/tag_repo_test.go b/backend/internal/repository/tag_repo_test.go similarity index 100% rename from internal/repository/tag_repo_test.go rename to backend/internal/repository/tag_repo_test.go diff --git a/internal/repository/team_member_repo.go b/backend/internal/repository/team_member_repo.go similarity index 100% rename from internal/repository/team_member_repo.go rename to backend/internal/repository/team_member_repo.go diff --git a/internal/repository/team_repo.go b/backend/internal/repository/team_repo.go similarity index 100% rename from internal/repository/team_repo.go rename to backend/internal/repository/team_repo.go diff --git a/internal/repository/team_repo_test.go b/backend/internal/repository/team_repo_test.go similarity index 100% rename from internal/repository/team_repo_test.go rename to backend/internal/repository/team_repo_test.go diff --git a/internal/repository/team_repo_test.go.bak b/backend/internal/repository/team_repo_test.go.bak similarity index 100% rename from internal/repository/team_repo_test.go.bak rename to backend/internal/repository/team_repo_test.go.bak diff --git a/internal/repository/testdb_helper.go b/backend/internal/repository/testdb_helper.go similarity index 100% rename from internal/repository/testdb_helper.go rename to backend/internal/repository/testdb_helper.go diff --git a/internal/repository/user_repo.go b/backend/internal/repository/user_repo.go similarity index 100% rename from internal/repository/user_repo.go rename to backend/internal/repository/user_repo.go diff --git a/internal/repository/user_repo_test.go b/backend/internal/repository/user_repo_test.go similarity index 100% rename from internal/repository/user_repo_test.go rename to backend/internal/repository/user_repo_test.go diff --git a/internal/repository/webhook_subscription_repo.go b/backend/internal/repository/webhook_subscription_repo.go similarity index 100% rename from internal/repository/webhook_subscription_repo.go rename to backend/internal/repository/webhook_subscription_repo.go diff --git a/internal/repository/webhook_subscription_repo_test.go.bak b/backend/internal/repository/webhook_subscription_repo_test.go.bak similarity index 100% rename from internal/repository/webhook_subscription_repo_test.go.bak rename to backend/internal/repository/webhook_subscription_repo_test.go.bak diff --git a/internal/repository/whatsapp_call_repo.go b/backend/internal/repository/whatsapp_call_repo.go similarity index 100% rename from internal/repository/whatsapp_call_repo.go rename to backend/internal/repository/whatsapp_call_repo.go diff --git a/internal/repository/widget_file_upload_repo.go b/backend/internal/repository/widget_file_upload_repo.go similarity index 100% rename from internal/repository/widget_file_upload_repo.go rename to backend/internal/repository/widget_file_upload_repo.go diff --git a/internal/repository/widget_file_upload_repo_test.go b/backend/internal/repository/widget_file_upload_repo_test.go similarity index 100% rename from internal/repository/widget_file_upload_repo_test.go rename to backend/internal/repository/widget_file_upload_repo_test.go diff --git a/internal/repository/widget_offline_message_repo.go b/backend/internal/repository/widget_offline_message_repo.go similarity index 100% rename from internal/repository/widget_offline_message_repo.go rename to backend/internal/repository/widget_offline_message_repo.go diff --git a/internal/repository/widget_offline_message_repo_test.go b/backend/internal/repository/widget_offline_message_repo_test.go similarity index 100% rename from internal/repository/widget_offline_message_repo_test.go rename to backend/internal/repository/widget_offline_message_repo_test.go diff --git a/internal/repository/widget_repo_test.go b/backend/internal/repository/widget_repo_test.go similarity index 100% rename from internal/repository/widget_repo_test.go rename to backend/internal/repository/widget_repo_test.go diff --git a/internal/repository/widget_test_repo.go b/backend/internal/repository/widget_test_repo.go similarity index 100% rename from internal/repository/widget_test_repo.go rename to backend/internal/repository/widget_test_repo.go diff --git a/internal/repository/widget_theme_config_repo.go b/backend/internal/repository/widget_theme_config_repo.go similarity index 100% rename from internal/repository/widget_theme_config_repo.go rename to backend/internal/repository/widget_theme_config_repo.go diff --git a/internal/repository/working_hour_repo.go b/backend/internal/repository/working_hour_repo.go similarity index 100% rename from internal/repository/working_hour_repo.go rename to backend/internal/repository/working_hour_repo.go diff --git a/internal/router/channel_callbacks.go b/backend/internal/router/channel_callbacks.go similarity index 100% rename from internal/router/channel_callbacks.go rename to backend/internal/router/channel_callbacks.go diff --git a/internal/router/hello.txt b/backend/internal/router/hello.txt similarity index 100% rename from internal/router/hello.txt rename to backend/internal/router/hello.txt diff --git a/internal/router/integration_callbacks.go b/backend/internal/router/integration_callbacks.go similarity index 100% rename from internal/router/integration_callbacks.go rename to backend/internal/router/integration_callbacks.go diff --git a/internal/router/router.go b/backend/internal/router/router.go similarity index 100% rename from internal/router/router.go rename to backend/internal/router/router.go diff --git a/internal/router/router_new.go b/backend/internal/router/router_new.go similarity index 100% rename from internal/router/router_new.go rename to backend/internal/router/router_new.go diff --git a/internal/router/router_test.go b/backend/internal/router/router_test.go similarity index 100% rename from internal/router/router_test.go rename to backend/internal/router/router_test.go diff --git a/internal/router/router_test_write.go_BAK b/backend/internal/router/router_test_write.go_BAK similarity index 100% rename from internal/router/router_test_write.go_BAK rename to backend/internal/router/router_test_write.go_BAK diff --git a/internal/router/test3.txt b/backend/internal/router/test3.txt similarity index 100% rename from internal/router/test3.txt rename to backend/internal/router/test3.txt diff --git a/internal/search/engine.go b/backend/internal/search/engine.go similarity index 100% rename from internal/search/engine.go rename to backend/internal/search/engine.go diff --git a/internal/search/engine_db.go b/backend/internal/search/engine_db.go similarity index 100% rename from internal/search/engine_db.go rename to backend/internal/search/engine_db.go diff --git a/internal/search/engine_meili.go b/backend/internal/search/engine_meili.go similarity index 100% rename from internal/search/engine_meili.go rename to backend/internal/search/engine_meili.go diff --git a/internal/search/engine_meili_live_test.go b/backend/internal/search/engine_meili_live_test.go similarity index 100% rename from internal/search/engine_meili_live_test.go rename to backend/internal/search/engine_meili_live_test.go diff --git a/internal/search/engine_test.go b/backend/internal/search/engine_test.go similarity index 100% rename from internal/search/engine_test.go rename to backend/internal/search/engine_test.go diff --git a/internal/search/search_filter.go b/backend/internal/search/search_filter.go similarity index 100% rename from internal/search/search_filter.go rename to backend/internal/search/search_filter.go diff --git a/internal/search/search_filter_test.go b/backend/internal/search/search_filter_test.go similarity index 100% rename from internal/search/search_filter_test.go rename to backend/internal/search/search_filter_test.go diff --git a/internal/search/search_repo_interface.go b/backend/internal/search/search_repo_interface.go similarity index 100% rename from internal/search/search_repo_interface.go rename to backend/internal/search/search_repo_interface.go diff --git a/internal/search/search_result.go b/backend/internal/search/search_result.go similarity index 100% rename from internal/search/search_result.go rename to backend/internal/search/search_result.go diff --git a/internal/search/search_service.go b/backend/internal/search/search_service.go similarity index 100% rename from internal/search/search_service.go rename to backend/internal/search/search_service.go diff --git a/internal/search/search_service.go.bak b/backend/internal/search/search_service.go.bak similarity index 100% rename from internal/search/search_service.go.bak rename to backend/internal/search/search_service.go.bak diff --git a/internal/search/search_service_test.go b/backend/internal/search/search_service_test.go similarity index 100% rename from internal/search/search_service_test.go rename to backend/internal/search/search_service_test.go diff --git a/internal/search_search_bak_offline.bak/search_filter.go b/backend/internal/search_search_bak_offline.bak/search_filter.go similarity index 100% rename from internal/search_search_bak_offline.bak/search_filter.go rename to backend/internal/search_search_bak_offline.bak/search_filter.go diff --git a/internal/search_search_bak_offline.bak/search_result.go b/backend/internal/search_search_bak_offline.bak/search_result.go similarity index 100% rename from internal/search_search_bak_offline.bak/search_result.go rename to backend/internal/search_search_bak_offline.bak/search_result.go diff --git a/internal/search_search_bak_offline.bak/search_service.go b/backend/internal/search_search_bak_offline.bak/search_service.go similarity index 100% rename from internal/search_search_bak_offline.bak/search_service.go rename to backend/internal/search_search_bak_offline.bak/search_service.go diff --git a/internal/security/encryption.go b/backend/internal/security/encryption.go similarity index 100% rename from internal/security/encryption.go rename to backend/internal/security/encryption.go diff --git a/internal/security/jwt_security.go b/backend/internal/security/jwt_security.go similarity index 100% rename from internal/security/jwt_security.go rename to backend/internal/security/jwt_security.go diff --git a/internal/security/sql_safety.go b/backend/internal/security/sql_safety.go similarity index 100% rename from internal/security/sql_safety.go rename to backend/internal/security/sql_safety.go diff --git a/internal/security/ssrf_protection.go b/backend/internal/security/ssrf_protection.go similarity index 100% rename from internal/security/ssrf_protection.go rename to backend/internal/security/ssrf_protection.go diff --git a/internal/security/test_write.go b/backend/internal/security/test_write.go similarity index 100% rename from internal/security/test_write.go rename to backend/internal/security/test_write.go diff --git a/internal/security/webhook_signing.go b/backend/internal/security/webhook_signing.go similarity index 100% rename from internal/security/webhook_signing.go rename to backend/internal/security/webhook_signing.go diff --git a/internal/service/account_service.go b/backend/internal/service/account_service.go similarity index 100% rename from internal/service/account_service.go rename to backend/internal/service/account_service.go diff --git a/internal/service/account_service_test.go b/backend/internal/service/account_service_test.go similarity index 100% rename from internal/service/account_service_test.go rename to backend/internal/service/account_service_test.go diff --git a/internal/service/account_service_test.go_BAK b/backend/internal/service/account_service_test.go_BAK similarity index 100% rename from internal/service/account_service_test.go_BAK rename to backend/internal/service/account_service_test.go_BAK diff --git a/internal/service/account_user_service.go b/backend/internal/service/account_user_service.go similarity index 100% rename from internal/service/account_user_service.go rename to backend/internal/service/account_user_service.go diff --git a/internal/service/agent_bot_inbox_service.go b/backend/internal/service/agent_bot_inbox_service.go similarity index 100% rename from internal/service/agent_bot_inbox_service.go rename to backend/internal/service/agent_bot_inbox_service.go diff --git a/internal/service/agent_bot_inbox_service_test.go b/backend/internal/service/agent_bot_inbox_service_test.go similarity index 100% rename from internal/service/agent_bot_inbox_service_test.go rename to backend/internal/service/agent_bot_inbox_service_test.go diff --git a/internal/service/agent_bot_listener.go b/backend/internal/service/agent_bot_listener.go similarity index 100% rename from internal/service/agent_bot_listener.go rename to backend/internal/service/agent_bot_listener.go diff --git a/internal/service/agent_bot_listener_test.go b/backend/internal/service/agent_bot_listener_test.go similarity index 100% rename from internal/service/agent_bot_listener_test.go rename to backend/internal/service/agent_bot_listener_test.go diff --git a/internal/service/agent_bot_service.go b/backend/internal/service/agent_bot_service.go similarity index 100% rename from internal/service/agent_bot_service.go rename to backend/internal/service/agent_bot_service.go diff --git a/internal/service/agent_capacity_policy_service.go b/backend/internal/service/agent_capacity_policy_service.go similarity index 100% rename from internal/service/agent_capacity_policy_service.go rename to backend/internal/service/agent_capacity_policy_service.go diff --git a/internal/service/agent_capacity_policy_service_test.go b/backend/internal/service/agent_capacity_policy_service_test.go similarity index 100% rename from internal/service/agent_capacity_policy_service_test.go rename to backend/internal/service/agent_capacity_policy_service_test.go diff --git a/internal/service/agent_service.go b/backend/internal/service/agent_service.go similarity index 100% rename from internal/service/agent_service.go rename to backend/internal/service/agent_service.go diff --git a/internal/service/analytics_csv.go b/backend/internal/service/analytics_csv.go similarity index 100% rename from internal/service/analytics_csv.go rename to backend/internal/service/analytics_csv.go diff --git a/internal/service/analytics_p513_test.go b/backend/internal/service/analytics_p513_test.go similarity index 100% rename from internal/service/analytics_p513_test.go rename to backend/internal/service/analytics_p513_test.go diff --git a/internal/service/analytics_query_helpers.go b/backend/internal/service/analytics_query_helpers.go similarity index 100% rename from internal/service/analytics_query_helpers.go rename to backend/internal/service/analytics_query_helpers.go diff --git a/internal/service/analytics_service.go b/backend/internal/service/analytics_service.go similarity index 100% rename from internal/service/analytics_service.go rename to backend/internal/service/analytics_service.go diff --git a/internal/service/analytics_service_test.go_BAK b/backend/internal/service/analytics_service_test.go_BAK similarity index 100% rename from internal/service/analytics_service_test.go_BAK rename to backend/internal/service/analytics_service_test.go_BAK diff --git a/internal/service/applied_sla_service.go b/backend/internal/service/applied_sla_service.go similarity index 100% rename from internal/service/applied_sla_service.go rename to backend/internal/service/applied_sla_service.go diff --git a/internal/service/applied_sla_service_test.go b/backend/internal/service/applied_sla_service_test.go similarity index 100% rename from internal/service/applied_sla_service_test.go rename to backend/internal/service/applied_sla_service_test.go diff --git a/internal/service/article_service.go b/backend/internal/service/article_service.go similarity index 100% rename from internal/service/article_service.go rename to backend/internal/service/article_service.go diff --git a/internal/service/article_service_test.go b/backend/internal/service/article_service_test.go similarity index 100% rename from internal/service/article_service_test.go rename to backend/internal/service/article_service_test.go diff --git a/internal/service/article_service_test.go_BAK b/backend/internal/service/article_service_test.go_BAK similarity index 100% rename from internal/service/article_service_test.go_BAK rename to backend/internal/service/article_service_test.go_BAK diff --git a/internal/service/assignable_agent_service.go b/backend/internal/service/assignable_agent_service.go similarity index 100% rename from internal/service/assignable_agent_service.go rename to backend/internal/service/assignable_agent_service.go diff --git a/internal/service/assignment_policy_service.go b/backend/internal/service/assignment_policy_service.go similarity index 100% rename from internal/service/assignment_policy_service.go rename to backend/internal/service/assignment_policy_service.go diff --git a/internal/service/assignment_policy_v2_service.go b/backend/internal/service/assignment_policy_v2_service.go similarity index 100% rename from internal/service/assignment_policy_v2_service.go rename to backend/internal/service/assignment_policy_v2_service.go diff --git a/internal/service/assignment_policy_v2_service_test.go b/backend/internal/service/assignment_policy_v2_service_test.go similarity index 100% rename from internal/service/assignment_policy_v2_service_test.go rename to backend/internal/service/assignment_policy_v2_service_test.go diff --git a/internal/service/attachment_service.go b/backend/internal/service/attachment_service.go similarity index 100% rename from internal/service/attachment_service.go rename to backend/internal/service/attachment_service.go diff --git a/internal/service/attachment_service_test.go_BAK b/backend/internal/service/attachment_service_test.go_BAK similarity index 100% rename from internal/service/attachment_service_test.go_BAK rename to backend/internal/service/attachment_service_test.go_BAK diff --git a/internal/service/audit_service.go b/backend/internal/service/audit_service.go similarity index 100% rename from internal/service/audit_service.go rename to backend/internal/service/audit_service.go diff --git a/internal/service/audit_service_test.go b/backend/internal/service/audit_service_test.go similarity index 100% rename from internal/service/audit_service_test.go rename to backend/internal/service/audit_service_test.go diff --git a/internal/service/auth_service.go b/backend/internal/service/auth_service.go similarity index 100% rename from internal/service/auth_service.go rename to backend/internal/service/auth_service.go diff --git a/internal/service/auth_service_test.go b/backend/internal/service/auth_service_test.go similarity index 100% rename from internal/service/auth_service_test.go rename to backend/internal/service/auth_service_test.go diff --git a/internal/service/auth_service_test.go_BAK b/backend/internal/service/auth_service_test.go_BAK similarity index 100% rename from internal/service/auth_service_test.go_BAK rename to backend/internal/service/auth_service_test.go_BAK diff --git a/internal/service/auto_reply_rule_service.go b/backend/internal/service/auto_reply_rule_service.go similarity index 100% rename from internal/service/auto_reply_rule_service.go rename to backend/internal/service/auto_reply_rule_service.go diff --git a/internal/service/auto_reply_rule_service_test.go b/backend/internal/service/auto_reply_rule_service_test.go similarity index 100% rename from internal/service/auto_reply_rule_service_test.go rename to backend/internal/service/auto_reply_rule_service_test.go diff --git a/internal/service/banner_service.go b/backend/internal/service/banner_service.go similarity index 100% rename from internal/service/banner_service.go rename to backend/internal/service/banner_service.go diff --git a/internal/service/benchmark_test.go.bak b/backend/internal/service/benchmark_test.go.bak similarity index 100% rename from internal/service/benchmark_test.go.bak rename to backend/internal/service/benchmark_test.go.bak diff --git a/internal/service/campaign_service.go b/backend/internal/service/campaign_service.go similarity index 100% rename from internal/service/campaign_service.go rename to backend/internal/service/campaign_service.go diff --git a/internal/service/captain_assistant_response_service.go b/backend/internal/service/captain_assistant_response_service.go similarity index 100% rename from internal/service/captain_assistant_response_service.go rename to backend/internal/service/captain_assistant_response_service.go diff --git a/internal/service/captain_assistant_response_service_test.go b/backend/internal/service/captain_assistant_response_service_test.go similarity index 100% rename from internal/service/captain_assistant_response_service_test.go rename to backend/internal/service/captain_assistant_response_service_test.go diff --git a/internal/service/captain_assistant_service.go b/backend/internal/service/captain_assistant_service.go similarity index 100% rename from internal/service/captain_assistant_service.go rename to backend/internal/service/captain_assistant_service.go diff --git a/internal/service/captain_assistant_service_test.go_BAK b/backend/internal/service/captain_assistant_service_test.go_BAK similarity index 100% rename from internal/service/captain_assistant_service_test.go_BAK rename to backend/internal/service/captain_assistant_service_test.go_BAK diff --git a/internal/service/captain_bulk_action_service.go b/backend/internal/service/captain_bulk_action_service.go similarity index 100% rename from internal/service/captain_bulk_action_service.go rename to backend/internal/service/captain_bulk_action_service.go diff --git a/internal/service/captain_bulk_action_service_test.go b/backend/internal/service/captain_bulk_action_service_test.go similarity index 100% rename from internal/service/captain_bulk_action_service_test.go rename to backend/internal/service/captain_bulk_action_service_test.go diff --git a/internal/service/captain_conversation_service.go b/backend/internal/service/captain_conversation_service.go similarity index 100% rename from internal/service/captain_conversation_service.go rename to backend/internal/service/captain_conversation_service.go diff --git a/internal/service/captain_conversation_worker_test.go b/backend/internal/service/captain_conversation_worker_test.go similarity index 100% rename from internal/service/captain_conversation_worker_test.go rename to backend/internal/service/captain_conversation_worker_test.go diff --git a/internal/service/captain_custom_tool_service.go b/backend/internal/service/captain_custom_tool_service.go similarity index 100% rename from internal/service/captain_custom_tool_service.go rename to backend/internal/service/captain_custom_tool_service.go diff --git a/internal/service/captain_custom_tool_service_test.go_BAK b/backend/internal/service/captain_custom_tool_service_test.go_BAK similarity index 100% rename from internal/service/captain_custom_tool_service_test.go_BAK rename to backend/internal/service/captain_custom_tool_service_test.go_BAK diff --git a/internal/service/captain_document_service.go b/backend/internal/service/captain_document_service.go similarity index 100% rename from internal/service/captain_document_service.go rename to backend/internal/service/captain_document_service.go diff --git a/internal/service/captain_document_service_test.go b/backend/internal/service/captain_document_service_test.go similarity index 100% rename from internal/service/captain_document_service_test.go rename to backend/internal/service/captain_document_service_test.go diff --git a/internal/service/captain_document_service_test.go_BAK b/backend/internal/service/captain_document_service_test.go_BAK similarity index 100% rename from internal/service/captain_document_service_test.go_BAK rename to backend/internal/service/captain_document_service_test.go_BAK diff --git a/internal/service/captain_document_worker.go b/backend/internal/service/captain_document_worker.go similarity index 100% rename from internal/service/captain_document_worker.go rename to backend/internal/service/captain_document_worker.go diff --git a/internal/service/captain_preference_service.go b/backend/internal/service/captain_preference_service.go similarity index 100% rename from internal/service/captain_preference_service.go rename to backend/internal/service/captain_preference_service.go diff --git a/internal/service/captain_preference_service_test.go b/backend/internal/service/captain_preference_service_test.go similarity index 100% rename from internal/service/captain_preference_service_test.go rename to backend/internal/service/captain_preference_service_test.go diff --git a/internal/service/captain_scenario_service.go b/backend/internal/service/captain_scenario_service.go similarity index 100% rename from internal/service/captain_scenario_service.go rename to backend/internal/service/captain_scenario_service.go diff --git a/internal/service/captain_scenario_service_test.go_BAK b/backend/internal/service/captain_scenario_service_test.go_BAK similarity index 100% rename from internal/service/captain_scenario_service_test.go_BAK rename to backend/internal/service/captain_scenario_service_test.go_BAK diff --git a/internal/service/captain_task_extended_service.go b/backend/internal/service/captain_task_extended_service.go similarity index 100% rename from internal/service/captain_task_extended_service.go rename to backend/internal/service/captain_task_extended_service.go diff --git a/internal/service/captain_task_extended_service_test.go b/backend/internal/service/captain_task_extended_service_test.go similarity index 100% rename from internal/service/captain_task_extended_service_test.go rename to backend/internal/service/captain_task_extended_service_test.go diff --git a/internal/service/captain_task_service.go b/backend/internal/service/captain_task_service.go similarity index 100% rename from internal/service/captain_task_service.go rename to backend/internal/service/captain_task_service.go diff --git a/internal/service/captain_task_service.go.bak b/backend/internal/service/captain_task_service.go.bak similarity index 100% rename from internal/service/captain_task_service.go.bak rename to backend/internal/service/captain_task_service.go.bak diff --git a/internal/service/captain_task_service.go.bak2 b/backend/internal/service/captain_task_service.go.bak2 similarity index 100% rename from internal/service/captain_task_service.go.bak2 rename to backend/internal/service/captain_task_service.go.bak2 diff --git a/internal/service/captain_task_service_streaming_test.go b/backend/internal/service/captain_task_service_streaming_test.go similarity index 100% rename from internal/service/captain_task_service_streaming_test.go rename to backend/internal/service/captain_task_service_streaming_test.go diff --git a/internal/service/captain_task_service_test.go b/backend/internal/service/captain_task_service_test.go similarity index 100% rename from internal/service/captain_task_service_test.go rename to backend/internal/service/captain_task_service_test.go diff --git a/internal/service/category_service.go b/backend/internal/service/category_service.go similarity index 100% rename from internal/service/category_service.go rename to backend/internal/service/category_service.go diff --git a/internal/service/category_service_test.go b/backend/internal/service/category_service_test.go similarity index 100% rename from internal/service/category_service_test.go rename to backend/internal/service/category_service_test.go diff --git a/internal/service/category_service_test.go.bak b/backend/internal/service/category_service_test.go.bak similarity index 100% rename from internal/service/category_service_test.go.bak rename to backend/internal/service/category_service_test.go.bak diff --git a/internal/service/channel_email_service.go b/backend/internal/service/channel_email_service.go similarity index 100% rename from internal/service/channel_email_service.go rename to backend/internal/service/channel_email_service.go diff --git a/internal/service/channel_facebook_service.go b/backend/internal/service/channel_facebook_service.go similarity index 100% rename from internal/service/channel_facebook_service.go rename to backend/internal/service/channel_facebook_service.go diff --git a/internal/service/channel_google_service.go b/backend/internal/service/channel_google_service.go similarity index 100% rename from internal/service/channel_google_service.go rename to backend/internal/service/channel_google_service.go diff --git a/internal/service/channel_instagram_service.go b/backend/internal/service/channel_instagram_service.go similarity index 100% rename from internal/service/channel_instagram_service.go rename to backend/internal/service/channel_instagram_service.go diff --git a/internal/service/channel_instagram_service.go_BAK2 b/backend/internal/service/channel_instagram_service.go_BAK2 similarity index 100% rename from internal/service/channel_instagram_service.go_BAK2 rename to backend/internal/service/channel_instagram_service.go_BAK2 diff --git a/internal/service/channel_line_service.go b/backend/internal/service/channel_line_service.go similarity index 100% rename from internal/service/channel_line_service.go rename to backend/internal/service/channel_line_service.go diff --git a/internal/service/channel_microsoft_service.go b/backend/internal/service/channel_microsoft_service.go similarity index 100% rename from internal/service/channel_microsoft_service.go rename to backend/internal/service/channel_microsoft_service.go diff --git a/internal/service/channel_tiktok_service.go b/backend/internal/service/channel_tiktok_service.go similarity index 100% rename from internal/service/channel_tiktok_service.go rename to backend/internal/service/channel_tiktok_service.go diff --git a/internal/service/channel_twilio_service.go b/backend/internal/service/channel_twilio_service.go similarity index 100% rename from internal/service/channel_twilio_service.go rename to backend/internal/service/channel_twilio_service.go diff --git a/internal/service/channel_twilio_sms_service.go b/backend/internal/service/channel_twilio_sms_service.go similarity index 100% rename from internal/service/channel_twilio_sms_service.go rename to backend/internal/service/channel_twilio_sms_service.go diff --git a/internal/service/channel_twitter_service.go b/backend/internal/service/channel_twitter_service.go similarity index 100% rename from internal/service/channel_twitter_service.go rename to backend/internal/service/channel_twitter_service.go diff --git a/internal/service/company_service.go b/backend/internal/service/company_service.go similarity index 100% rename from internal/service/company_service.go rename to backend/internal/service/company_service.go diff --git a/internal/service/company_service_test.go b/backend/internal/service/company_service_test.go similarity index 100% rename from internal/service/company_service_test.go rename to backend/internal/service/company_service_test.go diff --git a/internal/service/contact_export_mailer.go b/backend/internal/service/contact_export_mailer.go similarity index 100% rename from internal/service/contact_export_mailer.go rename to backend/internal/service/contact_export_mailer.go diff --git a/internal/service/contact_export_worker.go b/backend/internal/service/contact_export_worker.go similarity index 100% rename from internal/service/contact_export_worker.go rename to backend/internal/service/contact_export_worker.go diff --git a/internal/service/contact_import_worker.go b/backend/internal/service/contact_import_worker.go similarity index 100% rename from internal/service/contact_import_worker.go rename to backend/internal/service/contact_import_worker.go diff --git a/internal/service/contact_inbox_service.go b/backend/internal/service/contact_inbox_service.go similarity index 100% rename from internal/service/contact_inbox_service.go rename to backend/internal/service/contact_inbox_service.go diff --git a/internal/service/contact_inbox_service_test.go b/backend/internal/service/contact_inbox_service_test.go similarity index 100% rename from internal/service/contact_inbox_service_test.go rename to backend/internal/service/contact_inbox_service_test.go diff --git a/internal/service/contact_inbox_service_test.go_BAK b/backend/internal/service/contact_inbox_service_test.go_BAK similarity index 100% rename from internal/service/contact_inbox_service_test.go_BAK rename to backend/internal/service/contact_inbox_service_test.go_BAK diff --git a/internal/service/contact_merge_service.go b/backend/internal/service/contact_merge_service.go similarity index 100% rename from internal/service/contact_merge_service.go rename to backend/internal/service/contact_merge_service.go diff --git a/internal/service/contact_merge_service_test.go b/backend/internal/service/contact_merge_service_test.go similarity index 100% rename from internal/service/contact_merge_service_test.go rename to backend/internal/service/contact_merge_service_test.go diff --git a/internal/service/contact_note_service.go b/backend/internal/service/contact_note_service.go similarity index 100% rename from internal/service/contact_note_service.go rename to backend/internal/service/contact_note_service.go diff --git a/internal/service/contact_service.go b/backend/internal/service/contact_service.go similarity index 100% rename from internal/service/contact_service.go rename to backend/internal/service/contact_service.go diff --git a/internal/service/contact_service_g3_test.go b/backend/internal/service/contact_service_g3_test.go similarity index 100% rename from internal/service/contact_service_g3_test.go rename to backend/internal/service/contact_service_g3_test.go diff --git a/internal/service/contact_service_test.go_BAK b/backend/internal/service/contact_service_test.go_BAK similarity index 100% rename from internal/service/contact_service_test.go_BAK rename to backend/internal/service/contact_service_test.go_BAK diff --git a/internal/service/conversation_assignment_test.go b/backend/internal/service/conversation_assignment_test.go similarity index 100% rename from internal/service/conversation_assignment_test.go rename to backend/internal/service/conversation_assignment_test.go diff --git a/internal/service/conversation_delete_worker.go b/backend/internal/service/conversation_delete_worker.go similarity index 100% rename from internal/service/conversation_delete_worker.go rename to backend/internal/service/conversation_delete_worker.go diff --git a/internal/service/conversation_filter_test.go b/backend/internal/service/conversation_filter_test.go similarity index 100% rename from internal/service/conversation_filter_test.go rename to backend/internal/service/conversation_filter_test.go diff --git a/internal/service/conversation_finder_strategy.go b/backend/internal/service/conversation_finder_strategy.go similarity index 100% rename from internal/service/conversation_finder_strategy.go rename to backend/internal/service/conversation_finder_strategy.go diff --git a/internal/service/conversation_insight_service.go b/backend/internal/service/conversation_insight_service.go similarity index 100% rename from internal/service/conversation_insight_service.go rename to backend/internal/service/conversation_insight_service.go diff --git a/internal/service/conversation_insight_service_test.go b/backend/internal/service/conversation_insight_service_test.go similarity index 100% rename from internal/service/conversation_insight_service_test.go rename to backend/internal/service/conversation_insight_service_test.go diff --git a/internal/service/conversation_maintenance_worker.go b/backend/internal/service/conversation_maintenance_worker.go similarity index 100% rename from internal/service/conversation_maintenance_worker.go rename to backend/internal/service/conversation_maintenance_worker.go diff --git a/internal/service/conversation_maintenance_worker_test.go b/backend/internal/service/conversation_maintenance_worker_test.go similarity index 100% rename from internal/service/conversation_maintenance_worker_test.go rename to backend/internal/service/conversation_maintenance_worker_test.go diff --git a/internal/service/conversation_participant_service.go b/backend/internal/service/conversation_participant_service.go similarity index 100% rename from internal/service/conversation_participant_service.go rename to backend/internal/service/conversation_participant_service.go diff --git a/internal/service/conversation_participant_service_test.go b/backend/internal/service/conversation_participant_service_test.go similarity index 100% rename from internal/service/conversation_participant_service_test.go rename to backend/internal/service/conversation_participant_service_test.go diff --git a/internal/service/conversation_service.go b/backend/internal/service/conversation_service.go similarity index 100% rename from internal/service/conversation_service.go rename to backend/internal/service/conversation_service.go diff --git a/internal/service/conversation_service_test.go b/backend/internal/service/conversation_service_test.go similarity index 100% rename from internal/service/conversation_service_test.go rename to backend/internal/service/conversation_service_test.go diff --git a/internal/service/conversation_service_test.go_BAK b/backend/internal/service/conversation_service_test.go_BAK similarity index 100% rename from internal/service/conversation_service_test.go_BAK rename to backend/internal/service/conversation_service_test.go_BAK diff --git a/internal/service/copilot_context_service.go b/backend/internal/service/copilot_context_service.go similarity index 100% rename from internal/service/copilot_context_service.go rename to backend/internal/service/copilot_context_service.go diff --git a/internal/service/copilot_context_service_test.go b/backend/internal/service/copilot_context_service_test.go similarity index 100% rename from internal/service/copilot_context_service_test.go rename to backend/internal/service/copilot_context_service_test.go diff --git a/internal/service/copilot_response_worker.go b/backend/internal/service/copilot_response_worker.go similarity index 100% rename from internal/service/copilot_response_worker.go rename to backend/internal/service/copilot_response_worker.go diff --git a/internal/service/copilot_response_worker_test.go b/backend/internal/service/copilot_response_worker_test.go similarity index 100% rename from internal/service/copilot_response_worker_test.go rename to backend/internal/service/copilot_response_worker_test.go diff --git a/internal/service/copilot_service.go b/backend/internal/service/copilot_service.go similarity index 100% rename from internal/service/copilot_service.go rename to backend/internal/service/copilot_service.go diff --git a/internal/service/copilot_service_test.go_BAK b/backend/internal/service/copilot_service_test.go_BAK similarity index 100% rename from internal/service/copilot_service_test.go_BAK rename to backend/internal/service/copilot_service_test.go_BAK diff --git a/internal/service/csat_metrics_service.go b/backend/internal/service/csat_metrics_service.go similarity index 100% rename from internal/service/csat_metrics_service.go rename to backend/internal/service/csat_metrics_service.go diff --git a/internal/service/csat_template_service.go b/backend/internal/service/csat_template_service.go similarity index 100% rename from internal/service/csat_template_service.go rename to backend/internal/service/csat_template_service.go diff --git a/internal/service/csat_template_worker.go b/backend/internal/service/csat_template_worker.go similarity index 100% rename from internal/service/csat_template_worker.go rename to backend/internal/service/csat_template_worker.go diff --git a/internal/service/csat_template_worker_test.go b/backend/internal/service/csat_template_worker_test.go similarity index 100% rename from internal/service/csat_template_worker_test.go rename to backend/internal/service/csat_template_worker_test.go diff --git a/internal/service/custom_attribute_definition_service.go b/backend/internal/service/custom_attribute_definition_service.go similarity index 100% rename from internal/service/custom_attribute_definition_service.go rename to backend/internal/service/custom_attribute_definition_service.go diff --git a/internal/service/custom_attribute_definition_service_test.go b/backend/internal/service/custom_attribute_definition_service_test.go similarity index 100% rename from internal/service/custom_attribute_definition_service_test.go rename to backend/internal/service/custom_attribute_definition_service_test.go diff --git a/internal/service/custom_attribute_value_service.go b/backend/internal/service/custom_attribute_value_service.go similarity index 100% rename from internal/service/custom_attribute_value_service.go rename to backend/internal/service/custom_attribute_value_service.go diff --git a/internal/service/custom_attribute_value_service_test.go b/backend/internal/service/custom_attribute_value_service_test.go similarity index 100% rename from internal/service/custom_attribute_value_service_test.go rename to backend/internal/service/custom_attribute_value_service_test.go diff --git a/internal/service/custom_attribute_value_service_test.go_BAK b/backend/internal/service/custom_attribute_value_service_test.go_BAK similarity index 100% rename from internal/service/custom_attribute_value_service_test.go_BAK rename to backend/internal/service/custom_attribute_value_service_test.go_BAK diff --git a/internal/service/custom_filter_service.go b/backend/internal/service/custom_filter_service.go similarity index 100% rename from internal/service/custom_filter_service.go rename to backend/internal/service/custom_filter_service.go diff --git a/internal/service/custom_filter_service_test.go b/backend/internal/service/custom_filter_service_test.go similarity index 100% rename from internal/service/custom_filter_service_test.go rename to backend/internal/service/custom_filter_service_test.go diff --git a/internal/service/custom_role_service.go b/backend/internal/service/custom_role_service.go similarity index 100% rename from internal/service/custom_role_service.go rename to backend/internal/service/custom_role_service.go diff --git a/internal/service/custom_role_service_test.go b/backend/internal/service/custom_role_service_test.go similarity index 100% rename from internal/service/custom_role_service_test.go rename to backend/internal/service/custom_role_service_test.go diff --git a/internal/service/dashboard_app_service.go b/backend/internal/service/dashboard_app_service.go similarity index 100% rename from internal/service/dashboard_app_service.go rename to backend/internal/service/dashboard_app_service.go diff --git a/internal/service/dashboard_app_service_test.go b/backend/internal/service/dashboard_app_service_test.go similarity index 100% rename from internal/service/dashboard_app_service_test.go rename to backend/internal/service/dashboard_app_service_test.go diff --git a/internal/service/dashboard_app_service_test.go_BAK b/backend/internal/service/dashboard_app_service_test.go_BAK similarity index 100% rename from internal/service/dashboard_app_service_test.go_BAK rename to backend/internal/service/dashboard_app_service_test.go_BAK diff --git a/internal/service/delivery_status_service.go b/backend/internal/service/delivery_status_service.go similarity index 100% rename from internal/service/delivery_status_service.go rename to backend/internal/service/delivery_status_service.go diff --git a/internal/service/draft_message_service.go b/backend/internal/service/draft_message_service.go similarity index 100% rename from internal/service/draft_message_service.go rename to backend/internal/service/draft_message_service.go diff --git a/internal/service/draft_message_service_test.go b/backend/internal/service/draft_message_service_test.go similarity index 100% rename from internal/service/draft_message_service_test.go rename to backend/internal/service/draft_message_service_test.go diff --git a/internal/service/dyte_integration_service.go b/backend/internal/service/dyte_integration_service.go similarity index 100% rename from internal/service/dyte_integration_service.go rename to backend/internal/service/dyte_integration_service.go diff --git a/internal/service/dyte_integration_service_test.go b/backend/internal/service/dyte_integration_service_test.go similarity index 100% rename from internal/service/dyte_integration_service_test.go rename to backend/internal/service/dyte_integration_service_test.go diff --git a/internal/service/email_channel_migration_service.go b/backend/internal/service/email_channel_migration_service.go similarity index 100% rename from internal/service/email_channel_migration_service.go rename to backend/internal/service/email_channel_migration_service.go diff --git a/internal/service/folder_service.go b/backend/internal/service/folder_service.go similarity index 100% rename from internal/service/folder_service.go rename to backend/internal/service/folder_service.go diff --git a/internal/service/folder_service_test.go b/backend/internal/service/folder_service_test.go similarity index 100% rename from internal/service/folder_service_test.go rename to backend/internal/service/folder_service_test.go diff --git a/internal/service/folder_service_test.go.bak b/backend/internal/service/folder_service_test.go.bak similarity index 100% rename from internal/service/folder_service_test.go.bak rename to backend/internal/service/folder_service_test.go.bak diff --git a/internal/service/inbox_limit_service.go b/backend/internal/service/inbox_limit_service.go similarity index 100% rename from internal/service/inbox_limit_service.go rename to backend/internal/service/inbox_limit_service.go diff --git a/internal/service/inbox_member_service.go b/backend/internal/service/inbox_member_service.go similarity index 100% rename from internal/service/inbox_member_service.go rename to backend/internal/service/inbox_member_service.go diff --git a/internal/service/inbox_member_service_test.go_BAK b/backend/internal/service/inbox_member_service_test.go_BAK similarity index 100% rename from internal/service/inbox_member_service_test.go_BAK rename to backend/internal/service/inbox_member_service_test.go_BAK diff --git a/internal/service/inbox_service.go b/backend/internal/service/inbox_service.go similarity index 100% rename from internal/service/inbox_service.go rename to backend/internal/service/inbox_service.go diff --git a/internal/service/inbox_service_test.go b/backend/internal/service/inbox_service_test.go similarity index 100% rename from internal/service/inbox_service_test.go rename to backend/internal/service/inbox_service_test.go diff --git a/internal/service/inbox_service_test.go_BAK b/backend/internal/service/inbox_service_test.go_BAK similarity index 100% rename from internal/service/inbox_service_test.go_BAK rename to backend/internal/service/inbox_service_test.go_BAK diff --git a/internal/service/installation_config_service.go b/backend/internal/service/installation_config_service.go similarity index 100% rename from internal/service/installation_config_service.go rename to backend/internal/service/installation_config_service.go diff --git a/internal/service/integration_hook_service.go b/backend/internal/service/integration_hook_service.go similarity index 100% rename from internal/service/integration_hook_service.go rename to backend/internal/service/integration_hook_service.go diff --git a/internal/service/integration_hook_service_test.go b/backend/internal/service/integration_hook_service_test.go similarity index 100% rename from internal/service/integration_hook_service_test.go rename to backend/internal/service/integration_hook_service_test.go diff --git a/internal/service/intent_service.go b/backend/internal/service/intent_service.go similarity index 100% rename from internal/service/intent_service.go rename to backend/internal/service/intent_service.go diff --git a/internal/service/label_service.go b/backend/internal/service/label_service.go similarity index 100% rename from internal/service/label_service.go rename to backend/internal/service/label_service.go diff --git a/internal/service/label_service_test.go_BAK b/backend/internal/service/label_service_test.go_BAK similarity index 100% rename from internal/service/label_service_test.go_BAK rename to backend/internal/service/label_service_test.go_BAK diff --git a/internal/service/linear_integration_service_test.go b/backend/internal/service/linear_integration_service_test.go similarity index 100% rename from internal/service/linear_integration_service_test.go rename to backend/internal/service/linear_integration_service_test.go diff --git a/internal/service/linear_notion_integration_service.go b/backend/internal/service/linear_notion_integration_service.go similarity index 100% rename from internal/service/linear_notion_integration_service.go rename to backend/internal/service/linear_notion_integration_service.go diff --git a/internal/service/linear_notion_integration_service_test.go b/backend/internal/service/linear_notion_integration_service_test.go similarity index 100% rename from internal/service/linear_notion_integration_service_test.go rename to backend/internal/service/linear_notion_integration_service_test.go diff --git a/internal/service/llm_response_parser.go b/backend/internal/service/llm_response_parser.go similarity index 100% rename from internal/service/llm_response_parser.go rename to backend/internal/service/llm_response_parser.go diff --git a/internal/service/llm_response_parser_test.go b/backend/internal/service/llm_response_parser_test.go similarity index 100% rename from internal/service/llm_response_parser_test.go rename to backend/internal/service/llm_response_parser_test.go diff --git a/internal/service/message_delivery_worker.go b/backend/internal/service/message_delivery_worker.go similarity index 100% rename from internal/service/message_delivery_worker.go rename to backend/internal/service/message_delivery_worker.go diff --git a/internal/service/message_delivery_worker_test.go b/backend/internal/service/message_delivery_worker_test.go similarity index 100% rename from internal/service/message_delivery_worker_test.go rename to backend/internal/service/message_delivery_worker_test.go diff --git a/internal/service/message_service.go b/backend/internal/service/message_service.go similarity index 100% rename from internal/service/message_service.go rename to backend/internal/service/message_service.go diff --git a/internal/service/message_service_test.go b/backend/internal/service/message_service_test.go similarity index 100% rename from internal/service/message_service_test.go rename to backend/internal/service/message_service_test.go diff --git a/internal/service/message_service_test.go.bak b/backend/internal/service/message_service_test.go.bak similarity index 100% rename from internal/service/message_service_test.go.bak rename to backend/internal/service/message_service_test.go.bak diff --git a/internal/service/note_service.go b/backend/internal/service/note_service.go similarity index 100% rename from internal/service/note_service.go rename to backend/internal/service/note_service.go diff --git a/internal/service/notification_delivery_service.go b/backend/internal/service/notification_delivery_service.go similarity index 100% rename from internal/service/notification_delivery_service.go rename to backend/internal/service/notification_delivery_service.go diff --git a/internal/service/notification_service.go b/backend/internal/service/notification_service.go similarity index 100% rename from internal/service/notification_service.go rename to backend/internal/service/notification_service.go diff --git a/internal/service/notification_service_test.go b/backend/internal/service/notification_service_test.go similarity index 100% rename from internal/service/notification_service_test.go rename to backend/internal/service/notification_service_test.go diff --git a/internal/service/notification_service_test.go_BAK b/backend/internal/service/notification_service_test.go_BAK similarity index 100% rename from internal/service/notification_service_test.go_BAK rename to backend/internal/service/notification_service_test.go_BAK diff --git a/internal/service/notification_setting_service.go b/backend/internal/service/notification_setting_service.go similarity index 100% rename from internal/service/notification_setting_service.go rename to backend/internal/service/notification_setting_service.go diff --git a/internal/service/notification_setting_service_test.go b/backend/internal/service/notification_setting_service_test.go similarity index 100% rename from internal/service/notification_setting_service_test.go rename to backend/internal/service/notification_setting_service_test.go diff --git a/internal/service/notification_subscription_service.go b/backend/internal/service/notification_subscription_service.go similarity index 100% rename from internal/service/notification_subscription_service.go rename to backend/internal/service/notification_subscription_service.go diff --git a/internal/service/platform_app_service.go b/backend/internal/service/platform_app_service.go similarity index 100% rename from internal/service/platform_app_service.go rename to backend/internal/service/platform_app_service.go diff --git a/internal/service/platform_app_service_test.go_BAK b/backend/internal/service/platform_app_service_test.go_BAK similarity index 100% rename from internal/service/platform_app_service_test.go_BAK rename to backend/internal/service/platform_app_service_test.go_BAK diff --git a/internal/service/platform_user_service.go b/backend/internal/service/platform_user_service.go similarity index 100% rename from internal/service/platform_user_service.go rename to backend/internal/service/platform_user_service.go diff --git a/internal/service/platform_user_service_test.go b/backend/internal/service/platform_user_service_test.go similarity index 100% rename from internal/service/platform_user_service_test.go rename to backend/internal/service/platform_user_service_test.go diff --git a/internal/service/portal_member_service.go b/backend/internal/service/portal_member_service.go similarity index 100% rename from internal/service/portal_member_service.go rename to backend/internal/service/portal_member_service.go diff --git a/internal/service/portal_member_service_test.go b/backend/internal/service/portal_member_service_test.go similarity index 100% rename from internal/service/portal_member_service_test.go rename to backend/internal/service/portal_member_service_test.go diff --git a/internal/service/portal_member_service_test.go_BAK b/backend/internal/service/portal_member_service_test.go_BAK similarity index 100% rename from internal/service/portal_member_service_test.go_BAK rename to backend/internal/service/portal_member_service_test.go_BAK diff --git a/internal/service/portal_service.go b/backend/internal/service/portal_service.go similarity index 100% rename from internal/service/portal_service.go rename to backend/internal/service/portal_service.go diff --git a/internal/service/portal_service_test.go b/backend/internal/service/portal_service_test.go similarity index 100% rename from internal/service/portal_service_test.go rename to backend/internal/service/portal_service_test.go diff --git a/internal/service/portal_service_test.go_BAK b/backend/internal/service/portal_service_test.go_BAK similarity index 100% rename from internal/service/portal_service_test.go_BAK rename to backend/internal/service/portal_service_test.go_BAK diff --git a/internal/service/profile_confirmation_mailer.go b/backend/internal/service/profile_confirmation_mailer.go similarity index 100% rename from internal/service/profile_confirmation_mailer.go rename to backend/internal/service/profile_confirmation_mailer.go diff --git a/internal/service/profile_service.go b/backend/internal/service/profile_service.go similarity index 100% rename from internal/service/profile_service.go rename to backend/internal/service/profile_service.go diff --git a/internal/service/push_delivery_service.go b/backend/internal/service/push_delivery_service.go similarity index 100% rename from internal/service/push_delivery_service.go rename to backend/internal/service/push_delivery_service.go diff --git a/internal/service/push_delivery_service_test.go.bak b/backend/internal/service/push_delivery_service_test.go.bak similarity index 100% rename from internal/service/push_delivery_service_test.go.bak rename to backend/internal/service/push_delivery_service_test.go.bak diff --git a/internal/service/push_subscription_service.go b/backend/internal/service/push_subscription_service.go similarity index 100% rename from internal/service/push_subscription_service.go rename to backend/internal/service/push_subscription_service.go diff --git a/internal/service/push_subscription_service_test.go.bak b/backend/internal/service/push_subscription_service_test.go.bak similarity index 100% rename from internal/service/push_subscription_service_test.go.bak rename to backend/internal/service/push_subscription_service_test.go.bak diff --git a/internal/service/rag_service.go b/backend/internal/service/rag_service.go similarity index 100% rename from internal/service/rag_service.go rename to backend/internal/service/rag_service.go diff --git a/internal/service/rag_service_test.go b/backend/internal/service/rag_service_test.go similarity index 100% rename from internal/service/rag_service_test.go rename to backend/internal/service/rag_service_test.go diff --git a/internal/service/rbac_custom_role_test.go b/backend/internal/service/rbac_custom_role_test.go similarity index 100% rename from internal/service/rbac_custom_role_test.go rename to backend/internal/service/rbac_custom_role_test.go diff --git a/internal/service/rbac_service.go b/backend/internal/service/rbac_service.go similarity index 100% rename from internal/service/rbac_service.go rename to backend/internal/service/rbac_service.go diff --git a/internal/service/rbac_service_test.go_BAK b/backend/internal/service/rbac_service_test.go_BAK similarity index 100% rename from internal/service/rbac_service_test.go_BAK rename to backend/internal/service/rbac_service_test.go_BAK diff --git a/internal/service/reporting_backfill_service.go b/backend/internal/service/reporting_backfill_service.go similarity index 100% rename from internal/service/reporting_backfill_service.go rename to backend/internal/service/reporting_backfill_service.go diff --git a/internal/service/reporting_event_service.go b/backend/internal/service/reporting_event_service.go similarity index 100% rename from internal/service/reporting_event_service.go rename to backend/internal/service/reporting_event_service.go diff --git a/internal/service/reporting_metric_registry.go b/backend/internal/service/reporting_metric_registry.go similarity index 100% rename from internal/service/reporting_metric_registry.go rename to backend/internal/service/reporting_metric_registry.go diff --git a/internal/service/reporting_rollup_helpers.go b/backend/internal/service/reporting_rollup_helpers.go similarity index 100% rename from internal/service/reporting_rollup_helpers.go rename to backend/internal/service/reporting_rollup_helpers.go diff --git a/internal/service/reporting_rollup_service.go b/backend/internal/service/reporting_rollup_service.go similarity index 100% rename from internal/service/reporting_rollup_service.go rename to backend/internal/service/reporting_rollup_service.go diff --git a/internal/service/reporting_rollup_timezone_test.go b/backend/internal/service/reporting_rollup_timezone_test.go similarity index 100% rename from internal/service/reporting_rollup_timezone_test.go rename to backend/internal/service/reporting_rollup_timezone_test.go diff --git a/internal/service/reporting_rollup_worker.go b/backend/internal/service/reporting_rollup_worker.go similarity index 100% rename from internal/service/reporting_rollup_worker.go rename to backend/internal/service/reporting_rollup_worker.go diff --git a/internal/service/rewrite_reply_service.go.bak b/backend/internal/service/rewrite_reply_service.go.bak similarity index 100% rename from internal/service/rewrite_reply_service.go.bak rename to backend/internal/service/rewrite_reply_service.go.bak diff --git a/internal/service/search_indexer.go b/backend/internal/service/search_indexer.go similarity index 100% rename from internal/service/search_indexer.go rename to backend/internal/service/search_indexer.go diff --git a/internal/service/search_indexer_hooks_test.go b/backend/internal/service/search_indexer_hooks_test.go similarity index 100% rename from internal/service/search_indexer_hooks_test.go rename to backend/internal/service/search_indexer_hooks_test.go diff --git a/internal/service/search_indexer_worker.go b/backend/internal/service/search_indexer_worker.go similarity index 100% rename from internal/service/search_indexer_worker.go rename to backend/internal/service/search_indexer_worker.go diff --git a/internal/service/search_indexer_worker_test.go b/backend/internal/service/search_indexer_worker_test.go similarity index 100% rename from internal/service/search_indexer_worker_test.go rename to backend/internal/service/search_indexer_worker_test.go diff --git a/internal/service/service.go.bak b/backend/internal/service/service.go.bak similarity index 100% rename from internal/service/service.go.bak rename to backend/internal/service/service.go.bak diff --git a/internal/service/service_test_helper.go b/backend/internal/service/service_test_helper.go similarity index 100% rename from internal/service/service_test_helper.go rename to backend/internal/service/service_test_helper.go diff --git a/internal/service/service_test_helper.go_BAK b/backend/internal/service/service_test_helper.go_BAK similarity index 100% rename from internal/service/service_test_helper.go_BAK rename to backend/internal/service/service_test_helper.go_BAK diff --git a/internal/service/shopify_integration_service.go b/backend/internal/service/shopify_integration_service.go similarity index 100% rename from internal/service/shopify_integration_service.go rename to backend/internal/service/shopify_integration_service.go diff --git a/internal/service/shopify_integration_service_test.go b/backend/internal/service/shopify_integration_service_test.go similarity index 100% rename from internal/service/shopify_integration_service_test.go rename to backend/internal/service/shopify_integration_service_test.go diff --git a/internal/service/sla_event_service.go b/backend/internal/service/sla_event_service.go similarity index 100% rename from internal/service/sla_event_service.go rename to backend/internal/service/sla_event_service.go diff --git a/internal/service/sla_policy_service.go b/backend/internal/service/sla_policy_service.go similarity index 100% rename from internal/service/sla_policy_service.go rename to backend/internal/service/sla_policy_service.go diff --git a/internal/service/sla_policy_service_test.go b/backend/internal/service/sla_policy_service_test.go similarity index 100% rename from internal/service/sla_policy_service_test.go rename to backend/internal/service/sla_policy_service_test.go diff --git a/internal/service/sla_worker.go b/backend/internal/service/sla_worker.go similarity index 100% rename from internal/service/sla_worker.go rename to backend/internal/service/sla_worker.go diff --git a/internal/service/sla_worker_test.go b/backend/internal/service/sla_worker_test.go similarity index 100% rename from internal/service/sla_worker_test.go rename to backend/internal/service/sla_worker_test.go diff --git a/internal/service/slack_integration_service.go b/backend/internal/service/slack_integration_service.go similarity index 100% rename from internal/service/slack_integration_service.go rename to backend/internal/service/slack_integration_service.go diff --git a/internal/service/slack_integration_service_test.go b/backend/internal/service/slack_integration_service_test.go similarity index 100% rename from internal/service/slack_integration_service_test.go rename to backend/internal/service/slack_integration_service_test.go diff --git a/internal/service/summary_report_service.go b/backend/internal/service/summary_report_service.go similarity index 100% rename from internal/service/summary_report_service.go rename to backend/internal/service/summary_report_service.go diff --git a/internal/service/system_prompt_builder.go b/backend/internal/service/system_prompt_builder.go similarity index 100% rename from internal/service/system_prompt_builder.go rename to backend/internal/service/system_prompt_builder.go diff --git a/internal/service/tag_service.go b/backend/internal/service/tag_service.go similarity index 100% rename from internal/service/tag_service.go rename to backend/internal/service/tag_service.go diff --git a/internal/service/tag_service_test.go b/backend/internal/service/tag_service_test.go similarity index 100% rename from internal/service/tag_service_test.go rename to backend/internal/service/tag_service_test.go diff --git a/internal/service/tag_service_test.go_BAK b/backend/internal/service/tag_service_test.go_BAK similarity index 100% rename from internal/service/tag_service_test.go_BAK rename to backend/internal/service/tag_service_test.go_BAK diff --git a/internal/service/team_profile_service_test.go_BAK b/backend/internal/service/team_profile_service_test.go_BAK similarity index 100% rename from internal/service/team_profile_service_test.go_BAK rename to backend/internal/service/team_profile_service_test.go_BAK diff --git a/internal/service/team_service.go b/backend/internal/service/team_service.go similarity index 100% rename from internal/service/team_service.go rename to backend/internal/service/team_service.go diff --git a/internal/service/team_service_test.go_BAK b/backend/internal/service/team_service_test.go_BAK similarity index 100% rename from internal/service/team_service_test.go_BAK rename to backend/internal/service/team_service_test.go_BAK diff --git a/internal/service/upload_service.go b/backend/internal/service/upload_service.go similarity index 100% rename from internal/service/upload_service.go rename to backend/internal/service/upload_service.go diff --git a/internal/service/upload_service_test.go b/backend/internal/service/upload_service_test.go similarity index 100% rename from internal/service/upload_service_test.go rename to backend/internal/service/upload_service_test.go diff --git a/internal/service/upload_service_test.go_BAK b/backend/internal/service/upload_service_test.go_BAK similarity index 100% rename from internal/service/upload_service_test.go_BAK rename to backend/internal/service/upload_service_test.go_BAK diff --git a/internal/service/webhook_event_processor.go b/backend/internal/service/webhook_event_processor.go similarity index 100% rename from internal/service/webhook_event_processor.go rename to backend/internal/service/webhook_event_processor.go diff --git a/internal/service/webhook_event_processor_test.go b/backend/internal/service/webhook_event_processor_test.go similarity index 100% rename from internal/service/webhook_event_processor_test.go rename to backend/internal/service/webhook_event_processor_test.go diff --git a/internal/service/webhook_subscription_service.go b/backend/internal/service/webhook_subscription_service.go similarity index 100% rename from internal/service/webhook_subscription_service.go rename to backend/internal/service/webhook_subscription_service.go diff --git a/internal/service/webhook_subscription_service_test.go b/backend/internal/service/webhook_subscription_service_test.go similarity index 100% rename from internal/service/webhook_subscription_service_test.go rename to backend/internal/service/webhook_subscription_service_test.go diff --git a/internal/service/webhook_subscription_service_test.go_BAK b/backend/internal/service/webhook_subscription_service_test.go_BAK similarity index 100% rename from internal/service/webhook_subscription_service_test.go_BAK rename to backend/internal/service/webhook_subscription_service_test.go_BAK diff --git a/internal/service/whatsapp_authorization_service.go b/backend/internal/service/whatsapp_authorization_service.go similarity index 100% rename from internal/service/whatsapp_authorization_service.go rename to backend/internal/service/whatsapp_authorization_service.go diff --git a/internal/service/whatsapp_authorization_service_test.go b/backend/internal/service/whatsapp_authorization_service_test.go similarity index 100% rename from internal/service/whatsapp_authorization_service_test.go rename to backend/internal/service/whatsapp_authorization_service_test.go diff --git a/internal/service/whatsapp_call_service.go b/backend/internal/service/whatsapp_call_service.go similarity index 100% rename from internal/service/whatsapp_call_service.go rename to backend/internal/service/whatsapp_call_service.go diff --git a/internal/service/whatsapp_call_service_test.go b/backend/internal/service/whatsapp_call_service_test.go similarity index 100% rename from internal/service/whatsapp_call_service_test.go rename to backend/internal/service/whatsapp_call_service_test.go diff --git a/internal/service/widget_offline_message_test.go b/backend/internal/service/widget_offline_message_test.go similarity index 100% rename from internal/service/widget_offline_message_test.go rename to backend/internal/service/widget_offline_message_test.go diff --git a/internal/service/widget_service.go b/backend/internal/service/widget_service.go similarity index 100% rename from internal/service/widget_service.go rename to backend/internal/service/widget_service.go diff --git a/internal/service/widget_service_test.go b/backend/internal/service/widget_service_test.go similarity index 100% rename from internal/service/widget_service_test.go rename to backend/internal/service/widget_service_test.go diff --git a/internal/service/widget_test_service.go b/backend/internal/service/widget_test_service.go similarity index 100% rename from internal/service/widget_test_service.go rename to backend/internal/service/widget_test_service.go diff --git a/internal/service/widget_theme_service.go b/backend/internal/service/widget_theme_service.go similarity index 100% rename from internal/service/widget_theme_service.go rename to backend/internal/service/widget_theme_service.go diff --git a/internal/service/working_hour_service.go b/backend/internal/service/working_hour_service.go similarity index 100% rename from internal/service/working_hour_service.go rename to backend/internal/service/working_hour_service.go diff --git a/internal/service/working_hour_service_test.go b/backend/internal/service/working_hour_service_test.go similarity index 100% rename from internal/service/working_hour_service_test.go rename to backend/internal/service/working_hour_service_test.go diff --git a/internal/service/year_in_review_service.go b/backend/internal/service/year_in_review_service.go similarity index 100% rename from internal/service/year_in_review_service.go rename to backend/internal/service/year_in_review_service.go diff --git a/internal/service/year_in_review_service_test.go b/backend/internal/service/year_in_review_service_test.go similarity index 100% rename from internal/service/year_in_review_service_test.go rename to backend/internal/service/year_in_review_service_test.go diff --git a/internal/webhookutil/timeout.go b/backend/internal/webhookutil/timeout.go similarity index 100% rename from internal/webhookutil/timeout.go rename to backend/internal/webhookutil/timeout.go diff --git a/internal/worker/worker.go b/backend/internal/worker/worker.go similarity index 100% rename from internal/worker/worker.go rename to backend/internal/worker/worker.go diff --git a/internal/worker/worker_test.go b/backend/internal/worker/worker_test.go similarity index 100% rename from internal/worker/worker_test.go rename to backend/internal/worker/worker_test.go diff --git a/internal/ws/auth.go b/backend/internal/ws/auth.go similarity index 100% rename from internal/ws/auth.go rename to backend/internal/ws/auth.go diff --git a/internal/ws/broadcast.go b/backend/internal/ws/broadcast.go similarity index 100% rename from internal/ws/broadcast.go rename to backend/internal/ws/broadcast.go diff --git a/internal/ws/broadcast_test.go b/backend/internal/ws/broadcast_test.go similarity index 100% rename from internal/ws/broadcast_test.go rename to backend/internal/ws/broadcast_test.go diff --git a/internal/ws/event_publisher.go b/backend/internal/ws/event_publisher.go similarity index 100% rename from internal/ws/event_publisher.go rename to backend/internal/ws/event_publisher.go diff --git a/internal/ws/event_publisher_test.go b/backend/internal/ws/event_publisher_test.go similarity index 100% rename from internal/ws/event_publisher_test.go rename to backend/internal/ws/event_publisher_test.go diff --git a/internal/ws/event_types.go b/backend/internal/ws/event_types.go similarity index 100% rename from internal/ws/event_types.go rename to backend/internal/ws/event_types.go diff --git a/internal/ws/heartbeat.go b/backend/internal/ws/heartbeat.go similarity index 100% rename from internal/ws/heartbeat.go rename to backend/internal/ws/heartbeat.go diff --git a/internal/ws/presence.go b/backend/internal/ws/presence.go similarity index 100% rename from internal/ws/presence.go rename to backend/internal/ws/presence.go diff --git a/internal/ws/presence_test.go b/backend/internal/ws/presence_test.go similarity index 100% rename from internal/ws/presence_test.go rename to backend/internal/ws/presence_test.go diff --git a/internal/ws/sse_registry.go b/backend/internal/ws/sse_registry.go similarity index 100% rename from internal/ws/sse_registry.go rename to backend/internal/ws/sse_registry.go diff --git a/internal/ws/sse_registry_test.go b/backend/internal/ws/sse_registry_test.go similarity index 100% rename from internal/ws/sse_registry_test.go rename to backend/internal/ws/sse_registry_test.go diff --git a/internal/ws/typing.go b/backend/internal/ws/typing.go similarity index 100% rename from internal/ws/typing.go rename to backend/internal/ws/typing.go diff --git a/internal/ws/typing_test.go b/backend/internal/ws/typing_test.go similarity index 100% rename from internal/ws/typing_test.go rename to backend/internal/ws/typing_test.go diff --git a/internal/ws/ws_test.go b/backend/internal/ws/ws_test.go similarity index 100% rename from internal/ws/ws_test.go rename to backend/internal/ws/ws_test.go diff --git a/migrations/000001_init_schema.down.sql b/backend/migrations/000001_init_schema.down.sql similarity index 100% rename from migrations/000001_init_schema.down.sql rename to backend/migrations/000001_init_schema.down.sql diff --git a/migrations/000001_init_schema.up.sql b/backend/migrations/000001_init_schema.up.sql similarity index 100% rename from migrations/000001_init_schema.up.sql rename to backend/migrations/000001_init_schema.up.sql diff --git a/migrations/000002_add_captain_ai_tables.down.sql b/backend/migrations/000002_add_captain_ai_tables.down.sql similarity index 100% rename from migrations/000002_add_captain_ai_tables.down.sql rename to backend/migrations/000002_add_captain_ai_tables.down.sql diff --git a/migrations/000002_add_captain_ai_tables.up.sql b/backend/migrations/000002_add_captain_ai_tables.up.sql similarity index 100% rename from migrations/000002_add_captain_ai_tables.up.sql rename to backend/migrations/000002_add_captain_ai_tables.up.sql diff --git a/migrations/000003_add_rate_limit_state.down.sql b/backend/migrations/000003_add_rate_limit_state.down.sql similarity index 100% rename from migrations/000003_add_rate_limit_state.down.sql rename to backend/migrations/000003_add_rate_limit_state.down.sql diff --git a/migrations/000003_add_rate_limit_state.up.sql b/backend/migrations/000003_add_rate_limit_state.up.sql similarity index 100% rename from migrations/000003_add_rate_limit_state.up.sql rename to backend/migrations/000003_add_rate_limit_state.up.sql diff --git a/migrations/000004_add_saml_config_tables.down.sql b/backend/migrations/000004_add_saml_config_tables.down.sql similarity index 100% rename from migrations/000004_add_saml_config_tables.down.sql rename to backend/migrations/000004_add_saml_config_tables.down.sql diff --git a/migrations/000004_add_saml_config_tables.up.sql b/backend/migrations/000004_add_saml_config_tables.up.sql similarity index 100% rename from migrations/000004_add_saml_config_tables.up.sql rename to backend/migrations/000004_add_saml_config_tables.up.sql diff --git a/migrations/000005_add_dashboard_apps_table.down.sql b/backend/migrations/000005_add_dashboard_apps_table.down.sql similarity index 100% rename from migrations/000005_add_dashboard_apps_table.down.sql rename to backend/migrations/000005_add_dashboard_apps_table.down.sql diff --git a/migrations/000005_add_dashboard_apps_table.up.sql b/backend/migrations/000005_add_dashboard_apps_table.up.sql similarity index 100% rename from migrations/000005_add_dashboard_apps_table.up.sql rename to backend/migrations/000005_add_dashboard_apps_table.up.sql diff --git a/migrations/000006_add_contact_extended_fields.down.sql b/backend/migrations/000006_add_contact_extended_fields.down.sql similarity index 100% rename from migrations/000006_add_contact_extended_fields.down.sql rename to backend/migrations/000006_add_contact_extended_fields.down.sql diff --git a/migrations/000006_add_contact_extended_fields.up.sql b/backend/migrations/000006_add_contact_extended_fields.up.sql similarity index 100% rename from migrations/000006_add_contact_extended_fields.up.sql rename to backend/migrations/000006_add_contact_extended_fields.up.sql diff --git a/migrations/000007_add_channel_instagrams.down.sql b/backend/migrations/000007_add_channel_instagrams.down.sql similarity index 100% rename from migrations/000007_add_channel_instagrams.down.sql rename to backend/migrations/000007_add_channel_instagrams.down.sql diff --git a/migrations/000007_add_channel_instagrams.up.sql b/backend/migrations/000007_add_channel_instagrams.up.sql similarity index 100% rename from migrations/000007_add_channel_instagrams.up.sql rename to backend/migrations/000007_add_channel_instagrams.up.sql diff --git a/migrations/000008_add_search_indexes.down.sql b/backend/migrations/000008_add_search_indexes.down.sql similarity index 100% rename from migrations/000008_add_search_indexes.down.sql rename to backend/migrations/000008_add_search_indexes.down.sql diff --git a/migrations/000008_add_search_indexes.up.sql b/backend/migrations/000008_add_search_indexes.up.sql similarity index 100% rename from migrations/000008_add_search_indexes.up.sql rename to backend/migrations/000008_add_search_indexes.up.sql diff --git a/migrations/000009_add_permissibles_table.down.sql b/backend/migrations/000009_add_permissibles_table.down.sql similarity index 100% rename from migrations/000009_add_permissibles_table.down.sql rename to backend/migrations/000009_add_permissibles_table.down.sql diff --git a/migrations/000009_add_permissibles_table.up.sql b/backend/migrations/000009_add_permissibles_table.up.sql similarity index 100% rename from migrations/000009_add_permissibles_table.up.sql rename to backend/migrations/000009_add_permissibles_table.up.sql diff --git a/migrations/000010_add_access_tokens_table.down.sql b/backend/migrations/000010_add_access_tokens_table.down.sql similarity index 100% rename from migrations/000010_add_access_tokens_table.down.sql rename to backend/migrations/000010_add_access_tokens_table.down.sql diff --git a/migrations/000010_add_access_tokens_table.up.sql b/backend/migrations/000010_add_access_tokens_table.up.sql similarity index 100% rename from migrations/000010_add_access_tokens_table.up.sql rename to backend/migrations/000010_add_access_tokens_table.up.sql diff --git a/migrations/000011_update_platform_apps_columns.down.sql b/backend/migrations/000011_update_platform_apps_columns.down.sql similarity index 100% rename from migrations/000011_update_platform_apps_columns.down.sql rename to backend/migrations/000011_update_platform_apps_columns.down.sql diff --git a/migrations/000011_update_platform_apps_columns.up.sql b/backend/migrations/000011_update_platform_apps_columns.up.sql similarity index 100% rename from migrations/000011_update_platform_apps_columns.up.sql rename to backend/migrations/000011_update_platform_apps_columns.up.sql diff --git a/migrations/000012_add_knowledge_base_tables.down.sql b/backend/migrations/000012_add_knowledge_base_tables.down.sql similarity index 100% rename from migrations/000012_add_knowledge_base_tables.down.sql rename to backend/migrations/000012_add_knowledge_base_tables.down.sql diff --git a/migrations/000012_add_knowledge_base_tables.up.sql b/backend/migrations/000012_add_knowledge_base_tables.up.sql similarity index 100% rename from migrations/000012_add_knowledge_base_tables.up.sql rename to backend/migrations/000012_add_knowledge_base_tables.up.sql diff --git a/migrations/000013_add_pg_trgm_search.down.sql b/backend/migrations/000013_add_pg_trgm_search.down.sql similarity index 100% rename from migrations/000013_add_pg_trgm_search.down.sql rename to backend/migrations/000013_add_pg_trgm_search.down.sql diff --git a/migrations/000013_add_pg_trgm_search.up.sql b/backend/migrations/000013_add_pg_trgm_search.up.sql similarity index 100% rename from migrations/000013_add_pg_trgm_search.up.sql rename to backend/migrations/000013_add_pg_trgm_search.up.sql diff --git a/migrations/000014_add_captain_preferences_table.down.sql b/backend/migrations/000014_add_captain_preferences_table.down.sql similarity index 100% rename from migrations/000014_add_captain_preferences_table.down.sql rename to backend/migrations/000014_add_captain_preferences_table.down.sql diff --git a/migrations/000014_add_captain_preferences_table.up.sql b/backend/migrations/000014_add_captain_preferences_table.up.sql similarity index 100% rename from migrations/000014_add_captain_preferences_table.up.sql rename to backend/migrations/000014_add_captain_preferences_table.up.sql diff --git a/migrations/000015_add_integration_hook_tables.down.sql b/backend/migrations/000015_add_integration_hook_tables.down.sql similarity index 100% rename from migrations/000015_add_integration_hook_tables.down.sql rename to backend/migrations/000015_add_integration_hook_tables.down.sql diff --git a/migrations/000015_add_integration_hook_tables.up.sql b/backend/migrations/000015_add_integration_hook_tables.up.sql similarity index 100% rename from migrations/000015_add_integration_hook_tables.up.sql rename to backend/migrations/000015_add_integration_hook_tables.up.sql diff --git a/migrations/000016_add_channel_twitter_microsoft_google.down.sql b/backend/migrations/000016_add_channel_twitter_microsoft_google.down.sql similarity index 100% rename from migrations/000016_add_channel_twitter_microsoft_google.down.sql rename to backend/migrations/000016_add_channel_twitter_microsoft_google.down.sql diff --git a/migrations/000016_add_channel_twitter_microsoft_google.up.sql b/backend/migrations/000016_add_channel_twitter_microsoft_google.up.sql similarity index 100% rename from migrations/000016_add_channel_twitter_microsoft_google.up.sql rename to backend/migrations/000016_add_channel_twitter_microsoft_google.up.sql diff --git a/migrations/000017_add_profile_serializer_fields.down.sql b/backend/migrations/000017_add_profile_serializer_fields.down.sql similarity index 100% rename from migrations/000017_add_profile_serializer_fields.down.sql rename to backend/migrations/000017_add_profile_serializer_fields.down.sql diff --git a/migrations/000017_add_profile_serializer_fields.up.sql b/backend/migrations/000017_add_profile_serializer_fields.up.sql similarity index 100% rename from migrations/000017_add_profile_serializer_fields.up.sql rename to backend/migrations/000017_add_profile_serializer_fields.up.sql diff --git a/migrations/000018_add_conversation_message_parity_fields.down.sql b/backend/migrations/000018_add_conversation_message_parity_fields.down.sql similarity index 100% rename from migrations/000018_add_conversation_message_parity_fields.down.sql rename to backend/migrations/000018_add_conversation_message_parity_fields.down.sql diff --git a/migrations/000018_add_conversation_message_parity_fields.up.sql b/backend/migrations/000018_add_conversation_message_parity_fields.up.sql similarity index 100% rename from migrations/000018_add_conversation_message_parity_fields.up.sql rename to backend/migrations/000018_add_conversation_message_parity_fields.up.sql diff --git a/migrations/000019_add_contact_labels.down.sql b/backend/migrations/000019_add_contact_labels.down.sql similarity index 100% rename from migrations/000019_add_contact_labels.down.sql rename to backend/migrations/000019_add_contact_labels.down.sql diff --git a/migrations/000019_add_contact_labels.up.sql b/backend/migrations/000019_add_contact_labels.up.sql similarity index 100% rename from migrations/000019_add_contact_labels.up.sql rename to backend/migrations/000019_add_contact_labels.up.sql diff --git a/migrations/000020_add_data_imports.down.sql b/backend/migrations/000020_add_data_imports.down.sql similarity index 100% rename from migrations/000020_add_data_imports.down.sql rename to backend/migrations/000020_add_data_imports.down.sql diff --git a/migrations/000020_add_data_imports.up.sql b/backend/migrations/000020_add_data_imports.up.sql similarity index 100% rename from migrations/000020_add_data_imports.up.sql rename to backend/migrations/000020_add_data_imports.up.sql diff --git a/migrations/000021_add_contact_exports.down.sql b/backend/migrations/000021_add_contact_exports.down.sql similarity index 100% rename from migrations/000021_add_contact_exports.down.sql rename to backend/migrations/000021_add_contact_exports.down.sql diff --git a/migrations/000021_add_contact_exports.up.sql b/backend/migrations/000021_add_contact_exports.up.sql similarity index 100% rename from migrations/000021_add_contact_exports.up.sql rename to backend/migrations/000021_add_contact_exports.up.sql diff --git a/migrations/000022_add_agent_capacity_policy_links.down.sql b/backend/migrations/000022_add_agent_capacity_policy_links.down.sql similarity index 100% rename from migrations/000022_add_agent_capacity_policy_links.down.sql rename to backend/migrations/000022_add_agent_capacity_policy_links.down.sql diff --git a/migrations/000022_add_agent_capacity_policy_links.up.sql b/backend/migrations/000022_add_agent_capacity_policy_links.up.sql similarity index 100% rename from migrations/000022_add_agent_capacity_policy_links.up.sql rename to backend/migrations/000022_add_agent_capacity_policy_links.up.sql diff --git a/migrations/000023_align_custom_role_permissions.down.sql b/backend/migrations/000023_align_custom_role_permissions.down.sql similarity index 100% rename from migrations/000023_align_custom_role_permissions.down.sql rename to backend/migrations/000023_align_custom_role_permissions.down.sql diff --git a/migrations/000023_align_custom_role_permissions.up.sql b/backend/migrations/000023_align_custom_role_permissions.up.sql similarity index 100% rename from migrations/000023_align_custom_role_permissions.up.sql rename to backend/migrations/000023_align_custom_role_permissions.up.sql diff --git a/migrations/000024_add_account_inbox_limit.down.sql b/backend/migrations/000024_add_account_inbox_limit.down.sql similarity index 100% rename from migrations/000024_add_account_inbox_limit.down.sql rename to backend/migrations/000024_add_account_inbox_limit.down.sql diff --git a/migrations/000024_add_account_inbox_limit.up.sql b/backend/migrations/000024_add_account_inbox_limit.up.sql similarity index 100% rename from migrations/000024_add_account_inbox_limit.up.sql rename to backend/migrations/000024_add_account_inbox_limit.up.sql diff --git a/migrations/000025_add_account_captain_preferences.down.sql b/backend/migrations/000025_add_account_captain_preferences.down.sql similarity index 100% rename from migrations/000025_add_account_captain_preferences.down.sql rename to backend/migrations/000025_add_account_captain_preferences.down.sql diff --git a/migrations/000025_add_account_captain_preferences.up.sql b/backend/migrations/000025_add_account_captain_preferences.up.sql similarity index 100% rename from migrations/000025_add_account_captain_preferences.up.sql rename to backend/migrations/000025_add_account_captain_preferences.up.sql diff --git a/migrations/000026_add_background_jobs.down.sql b/backend/migrations/000026_add_background_jobs.down.sql similarity index 100% rename from migrations/000026_add_background_jobs.down.sql rename to backend/migrations/000026_add_background_jobs.down.sql diff --git a/migrations/000026_add_background_jobs.up.sql b/backend/migrations/000026_add_background_jobs.up.sql similarity index 100% rename from migrations/000026_add_background_jobs.up.sql rename to backend/migrations/000026_add_background_jobs.up.sql diff --git a/migrations/000027_add_user_auth_tokens.down.sql b/backend/migrations/000027_add_user_auth_tokens.down.sql similarity index 100% rename from migrations/000027_add_user_auth_tokens.down.sql rename to backend/migrations/000027_add_user_auth_tokens.down.sql diff --git a/migrations/000027_add_user_auth_tokens.up.sql b/backend/migrations/000027_add_user_auth_tokens.up.sql similarity index 100% rename from migrations/000027_add_user_auth_tokens.up.sql rename to backend/migrations/000027_add_user_auth_tokens.up.sql diff --git a/migrations/000028_align_tags_with_chatwoot_labels.down.sql b/backend/migrations/000028_align_tags_with_chatwoot_labels.down.sql similarity index 100% rename from migrations/000028_align_tags_with_chatwoot_labels.down.sql rename to backend/migrations/000028_align_tags_with_chatwoot_labels.down.sql diff --git a/migrations/000028_align_tags_with_chatwoot_labels.up.sql b/backend/migrations/000028_align_tags_with_chatwoot_labels.up.sql similarity index 100% rename from migrations/000028_align_tags_with_chatwoot_labels.up.sql rename to backend/migrations/000028_align_tags_with_chatwoot_labels.up.sql diff --git a/migrations/000029_align_webhook_subscriptions_with_chatwoot_webhooks.down.sql b/backend/migrations/000029_align_webhook_subscriptions_with_chatwoot_webhooks.down.sql similarity index 100% rename from migrations/000029_align_webhook_subscriptions_with_chatwoot_webhooks.down.sql rename to backend/migrations/000029_align_webhook_subscriptions_with_chatwoot_webhooks.down.sql diff --git a/migrations/000029_align_webhook_subscriptions_with_chatwoot_webhooks.up.sql b/backend/migrations/000029_align_webhook_subscriptions_with_chatwoot_webhooks.up.sql similarity index 100% rename from migrations/000029_align_webhook_subscriptions_with_chatwoot_webhooks.up.sql rename to backend/migrations/000029_align_webhook_subscriptions_with_chatwoot_webhooks.up.sql diff --git a/migrations/000030_align_integration_hooks_with_chatwoot_apps.down.sql b/backend/migrations/000030_align_integration_hooks_with_chatwoot_apps.down.sql similarity index 100% rename from migrations/000030_align_integration_hooks_with_chatwoot_apps.down.sql rename to backend/migrations/000030_align_integration_hooks_with_chatwoot_apps.down.sql diff --git a/migrations/000030_align_integration_hooks_with_chatwoot_apps.up.sql b/backend/migrations/000030_align_integration_hooks_with_chatwoot_apps.up.sql similarity index 100% rename from migrations/000030_align_integration_hooks_with_chatwoot_apps.up.sql rename to backend/migrations/000030_align_integration_hooks_with_chatwoot_apps.up.sql diff --git a/migrations/000031_align_account_users_inviter_id.down.sql b/backend/migrations/000031_align_account_users_inviter_id.down.sql similarity index 100% rename from migrations/000031_align_account_users_inviter_id.down.sql rename to backend/migrations/000031_align_account_users_inviter_id.down.sql diff --git a/migrations/000031_align_account_users_inviter_id.up.sql b/backend/migrations/000031_align_account_users_inviter_id.up.sql similarity index 100% rename from migrations/000031_align_account_users_inviter_id.up.sql rename to backend/migrations/000031_align_account_users_inviter_id.up.sql diff --git a/migrations/000032_add_users_unconfirmed_email.down.sql b/backend/migrations/000032_add_users_unconfirmed_email.down.sql similarity index 100% rename from migrations/000032_add_users_unconfirmed_email.down.sql rename to backend/migrations/000032_add_users_unconfirmed_email.down.sql diff --git a/migrations/000032_add_users_unconfirmed_email.up.sql b/backend/migrations/000032_add_users_unconfirmed_email.up.sql similarity index 100% rename from migrations/000032_add_users_unconfirmed_email.up.sql rename to backend/migrations/000032_add_users_unconfirmed_email.up.sql diff --git a/migrations/000033_add_accounts_custom_attributes.down.sql b/backend/migrations/000033_add_accounts_custom_attributes.down.sql similarity index 100% rename from migrations/000033_add_accounts_custom_attributes.down.sql rename to backend/migrations/000033_add_accounts_custom_attributes.down.sql diff --git a/migrations/000033_add_accounts_custom_attributes.up.sql b/backend/migrations/000033_add_accounts_custom_attributes.up.sql similarity index 100% rename from migrations/000033_add_accounts_custom_attributes.up.sql rename to backend/migrations/000033_add_accounts_custom_attributes.up.sql diff --git a/migrations/000034_align_calls_whatsapp_fields.down.sql b/backend/migrations/000034_align_calls_whatsapp_fields.down.sql similarity index 100% rename from migrations/000034_align_calls_whatsapp_fields.down.sql rename to backend/migrations/000034_align_calls_whatsapp_fields.down.sql diff --git a/migrations/000034_align_calls_whatsapp_fields.up.sql b/backend/migrations/000034_align_calls_whatsapp_fields.up.sql similarity index 100% rename from migrations/000034_align_calls_whatsapp_fields.up.sql rename to backend/migrations/000034_align_calls_whatsapp_fields.up.sql diff --git a/migrations/000035_align_facebook_callback_fields.down.sql b/backend/migrations/000035_align_facebook_callback_fields.down.sql similarity index 100% rename from migrations/000035_align_facebook_callback_fields.down.sql rename to backend/migrations/000035_align_facebook_callback_fields.down.sql diff --git a/migrations/000035_align_facebook_callback_fields.up.sql b/backend/migrations/000035_align_facebook_callback_fields.up.sql similarity index 100% rename from migrations/000035_align_facebook_callback_fields.up.sql rename to backend/migrations/000035_align_facebook_callback_fields.up.sql diff --git a/migrations/000036_add_accounts_reporting_timezone.down.sql b/backend/migrations/000036_add_accounts_reporting_timezone.down.sql similarity index 100% rename from migrations/000036_add_accounts_reporting_timezone.down.sql rename to backend/migrations/000036_add_accounts_reporting_timezone.down.sql diff --git a/migrations/000036_add_accounts_reporting_timezone.up.sql b/backend/migrations/000036_add_accounts_reporting_timezone.up.sql similarity index 100% rename from migrations/000036_add_accounts_reporting_timezone.up.sql rename to backend/migrations/000036_add_accounts_reporting_timezone.up.sql diff --git a/migrations/000037_add_accounts_limits.down.sql b/backend/migrations/000037_add_accounts_limits.down.sql similarity index 100% rename from migrations/000037_add_accounts_limits.down.sql rename to backend/migrations/000037_add_accounts_limits.down.sql diff --git a/migrations/000037_add_accounts_limits.up.sql b/backend/migrations/000037_add_accounts_limits.up.sql similarity index 100% rename from migrations/000037_add_accounts_limits.up.sql rename to backend/migrations/000037_add_accounts_limits.up.sql diff --git a/migrations/000038_add_channel_twitter_tweets_enabled.down.sql b/backend/migrations/000038_add_channel_twitter_tweets_enabled.down.sql similarity index 100% rename from migrations/000038_add_channel_twitter_tweets_enabled.down.sql rename to backend/migrations/000038_add_channel_twitter_tweets_enabled.down.sql diff --git a/migrations/000038_add_channel_twitter_tweets_enabled.up.sql b/backend/migrations/000038_add_channel_twitter_tweets_enabled.up.sql similarity index 100% rename from migrations/000038_add_channel_twitter_tweets_enabled.up.sql rename to backend/migrations/000038_add_channel_twitter_tweets_enabled.up.sql diff --git a/migrations/000039_add_companies_tables.down.sql b/backend/migrations/000039_add_companies_tables.down.sql similarity index 100% rename from migrations/000039_add_companies_tables.down.sql rename to backend/migrations/000039_add_companies_tables.down.sql diff --git a/migrations/000039_add_companies_tables.up.sql b/backend/migrations/000039_add_companies_tables.up.sql similarity index 100% rename from migrations/000039_add_companies_tables.up.sql rename to backend/migrations/000039_add_companies_tables.up.sql diff --git a/migrations/000040_add_sla_tables.down.sql b/backend/migrations/000040_add_sla_tables.down.sql similarity index 100% rename from migrations/000040_add_sla_tables.down.sql rename to backend/migrations/000040_add_sla_tables.down.sql diff --git a/migrations/000040_add_sla_tables.up.sql b/backend/migrations/000040_add_sla_tables.up.sql similarity index 100% rename from migrations/000040_add_sla_tables.up.sql rename to backend/migrations/000040_add_sla_tables.up.sql diff --git a/migrations/000041_add_installation_configs.down.sql b/backend/migrations/000041_add_installation_configs.down.sql similarity index 100% rename from migrations/000041_add_installation_configs.down.sql rename to backend/migrations/000041_add_installation_configs.down.sql diff --git a/migrations/000041_add_installation_configs.up.sql b/backend/migrations/000041_add_installation_configs.up.sql similarity index 100% rename from migrations/000041_add_installation_configs.up.sql rename to backend/migrations/000041_add_installation_configs.up.sql diff --git a/migrations/000042_add_csat_and_bot_rule_tables.down.sql b/backend/migrations/000042_add_csat_and_bot_rule_tables.down.sql similarity index 100% rename from migrations/000042_add_csat_and_bot_rule_tables.down.sql rename to backend/migrations/000042_add_csat_and_bot_rule_tables.down.sql diff --git a/migrations/000042_add_csat_and_bot_rule_tables.up.sql b/backend/migrations/000042_add_csat_and_bot_rule_tables.up.sql similarity index 100% rename from migrations/000042_add_csat_and_bot_rule_tables.up.sql rename to backend/migrations/000042_add_csat_and_bot_rule_tables.up.sql diff --git a/migrations/000043_add_automation_macro_tables.down.sql b/backend/migrations/000043_add_automation_macro_tables.down.sql similarity index 100% rename from migrations/000043_add_automation_macro_tables.down.sql rename to backend/migrations/000043_add_automation_macro_tables.down.sql diff --git a/migrations/000043_add_automation_macro_tables.up.sql b/backend/migrations/000043_add_automation_macro_tables.up.sql similarity index 100% rename from migrations/000043_add_automation_macro_tables.up.sql rename to backend/migrations/000043_add_automation_macro_tables.up.sql diff --git a/migrations/000044_add_audits_table.down.sql b/backend/migrations/000044_add_audits_table.down.sql similarity index 100% rename from migrations/000044_add_audits_table.down.sql rename to backend/migrations/000044_add_audits_table.down.sql diff --git a/migrations/000044_add_audits_table.up.sql b/backend/migrations/000044_add_audits_table.up.sql similarity index 100% rename from migrations/000044_add_audits_table.up.sql rename to backend/migrations/000044_add_audits_table.up.sql diff --git a/migrations/000045_add_teams_and_campaigns_tables.down.sql b/backend/migrations/000045_add_teams_and_campaigns_tables.down.sql similarity index 100% rename from migrations/000045_add_teams_and_campaigns_tables.down.sql rename to backend/migrations/000045_add_teams_and_campaigns_tables.down.sql diff --git a/migrations/000045_add_teams_and_campaigns_tables.up.sql b/backend/migrations/000045_add_teams_and_campaigns_tables.up.sql similarity index 100% rename from migrations/000045_add_teams_and_campaigns_tables.up.sql rename to backend/migrations/000045_add_teams_and_campaigns_tables.up.sql diff --git a/migrations/000046_add_portal_channel_web_widget_id.down.sql b/backend/migrations/000046_add_portal_channel_web_widget_id.down.sql similarity index 100% rename from migrations/000046_add_portal_channel_web_widget_id.down.sql rename to backend/migrations/000046_add_portal_channel_web_widget_id.down.sql diff --git a/migrations/000046_add_portal_channel_web_widget_id.up.sql b/backend/migrations/000046_add_portal_channel_web_widget_id.up.sql similarity index 100% rename from migrations/000046_add_portal_channel_web_widget_id.up.sql rename to backend/migrations/000046_add_portal_channel_web_widget_id.up.sql diff --git a/migrations/000047_add_help_center_model_fields.down.sql b/backend/migrations/000047_add_help_center_model_fields.down.sql similarity index 100% rename from migrations/000047_add_help_center_model_fields.down.sql rename to backend/migrations/000047_add_help_center_model_fields.down.sql diff --git a/migrations/000047_add_help_center_model_fields.up.sql b/backend/migrations/000047_add_help_center_model_fields.up.sql similarity index 100% rename from migrations/000047_add_help_center_model_fields.up.sql rename to backend/migrations/000047_add_help_center_model_fields.up.sql diff --git a/pkg/crypto/crypto_test.go b/backend/pkg/crypto/crypto_test.go similarity index 100% rename from pkg/crypto/crypto_test.go rename to backend/pkg/crypto/crypto_test.go diff --git a/pkg/crypto/hash.go b/backend/pkg/crypto/hash.go similarity index 100% rename from pkg/crypto/hash.go rename to backend/pkg/crypto/hash.go diff --git a/pkg/crypto/jwt.go b/backend/pkg/crypto/jwt.go similarity index 100% rename from pkg/crypto/jwt.go rename to backend/pkg/crypto/jwt.go diff --git a/pkg/logger/logger.go b/backend/pkg/logger/logger.go similarity index 100% rename from pkg/logger/logger.go rename to backend/pkg/logger/logger.go diff --git a/pkg/pagination/pagination.go b/backend/pkg/pagination/pagination.go similarity index 100% rename from pkg/pagination/pagination.go rename to backend/pkg/pagination/pagination.go diff --git a/pkg/response/error.go b/backend/pkg/response/error.go similarity index 100% rename from pkg/response/error.go rename to backend/pkg/response/error.go diff --git a/pkg/response/response.go b/backend/pkg/response/response.go similarity index 100% rename from pkg/response/response.go rename to backend/pkg/response/response.go diff --git a/pkg/testutil/fixtures.go b/backend/pkg/testutil/fixtures.go similarity index 100% rename from pkg/testutil/fixtures.go rename to backend/pkg/testutil/fixtures.go diff --git a/pkg/testutil/helpers.go b/backend/pkg/testutil/helpers.go similarity index 100% rename from pkg/testutil/helpers.go rename to backend/pkg/testutil/helpers.go diff --git a/pkg/validator/validator.go b/backend/pkg/validator/validator.go similarity index 100% rename from pkg/validator/validator.go rename to backend/pkg/validator/validator.go diff --git a/scripts/__pycache__/chatwoot_routes_manifest.cpython-313.pyc b/backend/scripts/__pycache__/chatwoot_routes_manifest.cpython-313.pyc similarity index 100% rename from scripts/__pycache__/chatwoot_routes_manifest.cpython-313.pyc rename to backend/scripts/__pycache__/chatwoot_routes_manifest.cpython-313.pyc diff --git a/scripts/__pycache__/generate_gap_report.cpython-313.pyc b/backend/scripts/__pycache__/generate_gap_report.cpython-313.pyc similarity index 100% rename from scripts/__pycache__/generate_gap_report.cpython-313.pyc rename to backend/scripts/__pycache__/generate_gap_report.cpython-313.pyc diff --git a/scripts/align_error_codes.py b/backend/scripts/align_error_codes.py similarity index 100% rename from scripts/align_error_codes.py rename to backend/scripts/align_error_codes.py diff --git a/scripts/chatwoot_routes_manifest.py b/backend/scripts/chatwoot_routes_manifest.py similarity index 100% rename from scripts/chatwoot_routes_manifest.py rename to backend/scripts/chatwoot_routes_manifest.py diff --git a/scripts/compare_routes.py b/backend/scripts/compare_routes.py similarity index 100% rename from scripts/compare_routes.py rename to backend/scripts/compare_routes.py diff --git a/scripts/compare_routes_v2.py b/backend/scripts/compare_routes_v2.py similarity index 100% rename from scripts/compare_routes_v2.py rename to backend/scripts/compare_routes_v2.py diff --git a/scripts/coverage/coverage_report.md b/backend/scripts/coverage/coverage_report.md similarity index 100% rename from scripts/coverage/coverage_report.md rename to backend/scripts/coverage/coverage_report.md diff --git a/scripts/coverage/generate_report.sh b/backend/scripts/coverage/generate_report.sh similarity index 100% rename from scripts/coverage/generate_report.sh rename to backend/scripts/coverage/generate_report.sh diff --git a/scripts/coverage_report.sh b/backend/scripts/coverage_report.sh similarity index 100% rename from scripts/coverage_report.sh rename to backend/scripts/coverage_report.sh diff --git a/scripts/db_backup.sh b/backend/scripts/db_backup.sh similarity index 100% rename from scripts/db_backup.sh rename to backend/scripts/db_backup.sh diff --git a/scripts/extract_chatwoot_routes.py b/backend/scripts/extract_chatwoot_routes.py similarity index 100% rename from scripts/extract_chatwoot_routes.py rename to backend/scripts/extract_chatwoot_routes.py diff --git a/scripts/extract_routes.py b/backend/scripts/extract_routes.py similarity index 100% rename from scripts/extract_routes.py rename to backend/scripts/extract_routes.py diff --git a/scripts/fix_all_route_params.py b/backend/scripts/fix_all_route_params.py similarity index 100% rename from scripts/fix_all_route_params.py rename to backend/scripts/fix_all_route_params.py diff --git a/scripts/fix_remaining_route_params.py b/backend/scripts/fix_remaining_route_params.py similarity index 100% rename from scripts/fix_remaining_route_params.py rename to backend/scripts/fix_remaining_route_params.py diff --git a/scripts/fix_route_params.py b/backend/scripts/fix_route_params.py similarity index 100% rename from scripts/fix_route_params.py rename to backend/scripts/fix_route_params.py diff --git a/scripts/fix_test_route_params.py b/backend/scripts/fix_test_route_params.py similarity index 100% rename from scripts/fix_test_route_params.py rename to backend/scripts/fix_test_route_params.py diff --git a/scripts/generate_gap_report.py b/backend/scripts/generate_gap_report.py similarity index 100% rename from scripts/generate_gap_report.py rename to backend/scripts/generate_gap_report.py diff --git a/scripts/health_check.sh b/backend/scripts/health_check.sh similarity index 100% rename from scripts/health_check.sh rename to backend/scripts/health_check.sh diff --git a/gorm_bool_main.go b/backend/scripts/legacy/gorm_bool_main.go similarity index 100% rename from gorm_bool_main.go rename to backend/scripts/legacy/gorm_bool_main.go diff --git a/rename_models.py b/backend/scripts/legacy/rename_models.py similarity index 100% rename from rename_models.py rename to backend/scripts/legacy/rename_models.py diff --git a/rename_models.sh b/backend/scripts/legacy/rename_models.sh similarity index 100% rename from rename_models.sh rename to backend/scripts/legacy/rename_models.sh diff --git a/rename_models.sh.txt b/backend/scripts/legacy/rename_models.sh.txt similarity index 100% rename from rename_models.sh.txt rename to backend/scripts/legacy/rename_models.sh.txt diff --git a/run_m11_tests.sh b/backend/scripts/legacy/run_m11_tests.sh similarity index 100% rename from run_m11_tests.sh rename to backend/scripts/legacy/run_m11_tests.sh diff --git a/verify_build.sh b/backend/scripts/legacy/verify_build.sh similarity index 100% rename from verify_build.sh rename to backend/scripts/legacy/verify_build.sh diff --git a/scripts/migrate.sh b/backend/scripts/migrate.sh similarity index 100% rename from scripts/migrate.sh rename to backend/scripts/migrate.sh diff --git a/scripts/parity_frontend_browser_smoke.mjs b/backend/scripts/parity_frontend_browser_smoke.mjs similarity index 100% rename from scripts/parity_frontend_browser_smoke.mjs rename to backend/scripts/parity_frontend_browser_smoke.mjs diff --git a/scripts/parity_frontend_smoke.sh b/backend/scripts/parity_frontend_smoke.sh similarity index 100% rename from scripts/parity_frontend_smoke.sh rename to backend/scripts/parity_frontend_smoke.sh diff --git a/scripts/parse_chatwoot_routes.py b/backend/scripts/parse_chatwoot_routes.py similarity index 100% rename from scripts/parse_chatwoot_routes.py rename to backend/scripts/parse_chatwoot_routes.py diff --git a/scripts/parse_chatwoot_routes.rb b/backend/scripts/parse_chatwoot_routes.rb similarity index 100% rename from scripts/parse_chatwoot_routes.rb rename to backend/scripts/parse_chatwoot_routes.rb diff --git a/scripts/parse_chatwoot_routes_v2.py b/backend/scripts/parse_chatwoot_routes_v2.py similarity index 100% rename from scripts/parse_chatwoot_routes_v2.py rename to backend/scripts/parse_chatwoot_routes_v2.py diff --git a/scripts/parse_chatwoot_routes_v3.py b/backend/scripts/parse_chatwoot_routes_v3.py similarity index 100% rename from scripts/parse_chatwoot_routes_v3.py rename to backend/scripts/parse_chatwoot_routes_v3.py diff --git a/scripts/prometheus_exporter.sh b/backend/scripts/prometheus_exporter.sh similarity index 100% rename from scripts/prometheus_exporter.sh rename to backend/scripts/prometheus_exporter.sh diff --git a/scripts/route_gap_analysis.py b/backend/scripts/route_gap_analysis.py similarity index 100% rename from scripts/route_gap_analysis.py rename to backend/scripts/route_gap_analysis.py diff --git a/scripts/scan_params.py b/backend/scripts/scan_params.py similarity index 100% rename from scripts/scan_params.py rename to backend/scripts/scan_params.py diff --git a/scripts/scan_route_conflicts.py b/backend/scripts/scan_route_conflicts.py similarity index 100% rename from scripts/scan_route_conflicts.py rename to backend/scripts/scan_route_conflicts.py diff --git a/scripts/seed.sh b/backend/scripts/seed.sh similarity index 100% rename from scripts/seed.sh rename to backend/scripts/seed.sh diff --git a/scripts/verify_tests.sh b/backend/scripts/verify_tests.sh similarity index 100% rename from scripts/verify_tests.sh rename to backend/scripts/verify_tests.sh diff --git a/tests/e2e/account_e2e_test.go b/backend/tests/e2e/account_e2e_test.go similarity index 100% rename from tests/e2e/account_e2e_test.go rename to backend/tests/e2e/account_e2e_test.go diff --git a/tests/e2e/auth_e2e_test.go b/backend/tests/e2e/auth_e2e_test.go similarity index 100% rename from tests/e2e/auth_e2e_test.go rename to backend/tests/e2e/auth_e2e_test.go diff --git a/tests/e2e/channel_incoming_e2e_test.go b/backend/tests/e2e/channel_incoming_e2e_test.go similarity index 100% rename from tests/e2e/channel_incoming_e2e_test.go rename to backend/tests/e2e/channel_incoming_e2e_test.go diff --git a/tests/e2e/conversation_e2e_test.go b/backend/tests/e2e/conversation_e2e_test.go similarity index 100% rename from tests/e2e/conversation_e2e_test.go rename to backend/tests/e2e/conversation_e2e_test.go diff --git a/tests/e2e/crm_e2e_test.go b/backend/tests/e2e/crm_e2e_test.go similarity index 100% rename from tests/e2e/crm_e2e_test.go rename to backend/tests/e2e/crm_e2e_test.go diff --git a/tests/e2e/csrf_e2e_test.go b/backend/tests/e2e/csrf_e2e_test.go similarity index 100% rename from tests/e2e/csrf_e2e_test.go rename to backend/tests/e2e/csrf_e2e_test.go diff --git a/tests/e2e/dashboard_app_e2e_test.go b/backend/tests/e2e/dashboard_app_e2e_test.go similarity index 100% rename from tests/e2e/dashboard_app_e2e_test.go rename to backend/tests/e2e/dashboard_app_e2e_test.go diff --git a/tests/e2e/e2e_test.go b/backend/tests/e2e/e2e_test.go similarity index 100% rename from tests/e2e/e2e_test.go rename to backend/tests/e2e/e2e_test.go diff --git a/tests/e2e/middleware_e2e_test.go b/backend/tests/e2e/middleware_e2e_test.go similarity index 100% rename from tests/e2e/middleware_e2e_test.go rename to backend/tests/e2e/middleware_e2e_test.go diff --git a/tests/e2e/rbac_e2e_test.go b/backend/tests/e2e/rbac_e2e_test.go similarity index 100% rename from tests/e2e/rbac_e2e_test.go rename to backend/tests/e2e/rbac_e2e_test.go diff --git a/tests/e2e/session_e2e_test.go b/backend/tests/e2e/session_e2e_test.go similarity index 100% rename from tests/e2e/session_e2e_test.go rename to backend/tests/e2e/session_e2e_test.go diff --git a/tests/helpers/pg_helper.go b/backend/tests/helpers/pg_helper.go similarity index 100% rename from tests/helpers/pg_helper.go rename to backend/tests/helpers/pg_helper.go diff --git a/Dockerfile b/deploy/docker/Dockerfile similarity index 95% rename from Dockerfile rename to deploy/docker/Dockerfile index 95286f84..812ef5ce 100644 --- a/Dockerfile +++ b/deploy/docker/Dockerfile @@ -15,11 +15,11 @@ WORKDIR /app RUN apk add --no-cache git # Dependency layer — cached unless go.mod/go.sum change -COPY go.mod go.sum ./ +COPY backend/go.mod backend/go.sum ./ RUN go mod download -# Copy source code -COPY . . +# Copy source code (build context = repo root) +COPY backend/ . # Build with version info injected via ldflags RUN CGO_ENABLED=0 GOOS=linux GOARCH=amd64 \ diff --git a/Dockerfile.dev b/deploy/docker/Dockerfile.dev similarity index 80% rename from Dockerfile.dev rename to deploy/docker/Dockerfile.dev index f51166b3..15a4825d 100644 --- a/Dockerfile.dev +++ b/deploy/docker/Dockerfile.dev @@ -9,11 +9,11 @@ RUN go install github.com/air-verse/air@latest && apk add --no-cache git WORKDIR /app # Pre-download dependencies for faster rebuilds -COPY go.mod go.sum ./ +COPY backend/go.mod backend/go.sum ./ RUN go mod download # Full source mount via volume in compose — no COPY needed here -# air.toml config must exist in project root +# air.toml config must exist in backend/ (project root for the Go module) EXPOSE 3000 CMD ["air", "-c", ".air.toml"] diff --git a/docker-compose.dev.yml b/deploy/docker/docker-compose.dev.yml similarity index 88% rename from docker-compose.dev.yml rename to deploy/docker/docker-compose.dev.yml index 5b40f9b1..b0c5f397 100644 --- a/docker-compose.dev.yml +++ b/deploy/docker/docker-compose.dev.yml @@ -45,8 +45,8 @@ services: gochat: build: - context: . - dockerfile: Dockerfile.dev + context: ../.. + dockerfile: deploy/docker/Dockerfile.dev container_name: gochat-app depends_on: postgres: @@ -56,8 +56,8 @@ services: ports: - "3000:3000" volumes: - - .:/app # Hot reload: mount source code - env_file: .env + - ../../backend:/app # Hot reload: mount source code + env_file: ../../.env environment: - GOCHAT_ENV=development - POSTGRES_HOST=postgres @@ -72,8 +72,8 @@ services: worker: build: - context: . - dockerfile: Dockerfile.dev + context: ../.. + dockerfile: deploy/docker/Dockerfile.dev container_name: gochat-worker depends_on: postgres: @@ -82,8 +82,8 @@ services: condition: service_healthy command: ["serve", "--worker-only"] volumes: - - .:/app - env_file: .env + - ../../backend:/app + env_file: ../../.env environment: - GOCHAT_ENV=development - POSTGRES_HOST=postgres diff --git a/docker-compose.prod.yml b/deploy/docker/docker-compose.prod.yml similarity index 98% rename from docker-compose.prod.yml rename to deploy/docker/docker-compose.prod.yml index 0894a9b4..3bab98cf 100644 --- a/docker-compose.prod.yml +++ b/deploy/docker/docker-compose.prod.yml @@ -57,7 +57,7 @@ services: condition: service_healthy ports: - "127.0.0.1:3000:3000" # Reverse proxy should handle external access - env_file: .env + env_file: ../../.env environment: - GOCHAT_ENV=production - POSTGRES_HOST=postgres @@ -89,7 +89,7 @@ services: redis: condition: service_healthy command: ["serve", "--worker-only"] - env_file: .env + env_file: ../../.env environment: - GOCHAT_ENV=production - POSTGRES_HOST=postgres diff --git a/docker-compose.test.yml b/deploy/docker/docker-compose.test.yml similarity index 94% rename from docker-compose.test.yml rename to deploy/docker/docker-compose.test.yml index 6bad8d74..ecf2f7e1 100644 --- a/docker-compose.test.yml +++ b/deploy/docker/docker-compose.test.yml @@ -31,8 +31,8 @@ services: test: build: - context: . - dockerfile: Dockerfile + context: ../.. + dockerfile: deploy/docker/Dockerfile depends_on: postgres: condition: service_healthy diff --git a/docker-compose.yml b/deploy/docker/docker-compose.yml similarity index 92% rename from docker-compose.yml rename to deploy/docker/docker-compose.yml index 1fc1d8b7..2f1dfd4f 100644 --- a/docker-compose.yml +++ b/deploy/docker/docker-compose.yml @@ -45,8 +45,8 @@ services: gochat: build: - context: . - dockerfile: Dockerfile + context: ../.. + dockerfile: deploy/docker/Dockerfile container_name: gochat-app depends_on: postgres: @@ -55,7 +55,7 @@ services: condition: service_healthy ports: - "3000:3000" - env_file: .env + env_file: ../../.env environment: - GOCHAT_ENV=development - POSTGRES_HOST=postgres @@ -65,7 +65,7 @@ services: - POSTGRES_PASSWORD=postgres - REDIS_URL=redis://redis:6379 volumes: - - ./:/app:delegated + - ../../backend:/app:delegated volumes: postgres_data: diff --git a/deploy/quickstart/compose.yaml b/deploy/quickstart/compose.yaml index 12de5544..c3015b72 100644 --- a/deploy/quickstart/compose.yaml +++ b/deploy/quickstart/compose.yaml @@ -66,7 +66,7 @@ services: gochat: build: context: ../.. - dockerfile: Dockerfile + dockerfile: deploy/docker/Dockerfile restart: unless-stopped depends_on: postgres: @@ -116,7 +116,7 @@ services: seed: build: context: ../.. - dockerfile: Dockerfile + dockerfile: deploy/docker/Dockerfile profiles: ["seed"] depends_on: gochat: diff --git a/ALIGNMENT_PLAN.md b/docs/reports/ALIGNMENT_PLAN.md similarity index 100% rename from ALIGNMENT_PLAN.md rename to docs/reports/ALIGNMENT_PLAN.md diff --git a/GAP_REPORT.md b/docs/reports/GAP_REPORT.md similarity index 100% rename from GAP_REPORT.md rename to docs/reports/GAP_REPORT.md diff --git a/GAP_REPORT_AND_PLAN.md b/docs/reports/GAP_REPORT_AND_PLAN.md similarity index 100% rename from GAP_REPORT_AND_PLAN.md rename to docs/reports/GAP_REPORT_AND_PLAN.md diff --git a/ROUTE_GAP_REPORT.md b/docs/reports/ROUTE_GAP_REPORT.md similarity index 100% rename from ROUTE_GAP_REPORT.md rename to docs/reports/ROUTE_GAP_REPORT.md diff --git a/V4_companies_verification_report.md b/docs/reports/V4_companies_verification_report.md similarity index 100% rename from V4_companies_verification_report.md rename to docs/reports/V4_companies_verification_report.md diff --git a/VERIFICATION_REPORT_G7_SLA_APPLIEDSLA_APV2.md b/docs/reports/VERIFICATION_REPORT_G7_SLA_APPLIEDSLA_APV2.md similarity index 100% rename from VERIFICATION_REPORT_G7_SLA_APPLIEDSLA_APV2.md rename to docs/reports/VERIFICATION_REPORT_G7_SLA_APPLIEDSLA_APV2.md