haojiwen 3 هفته پیش
والد
کامیت
1555be6918
60فایلهای تغییر یافته به همراه466586 افزوده شده و 56035 حذف شده
  1. 37 15
      AGENTS.md
  2. 53 78
      Dockerfile
  3. 0 6
      crontabs/crontabfile.txt
  4. 58 14
      docker-compose.yml
  5. 75 0
      nginx.conf
  6. 0 0
      qita/API接口清单.md
  7. 0 0
      qita/Swagger3.0.json
  8. 0 0
      qita/code/AI-ONBOARDING.md
  9. 0 0
      qita/code/ARCHITECTURE-RULES.md
  10. 0 0
      qita/code/BUG-LESSONS.md
  11. 0 0
      qita/code/CLAUDE.md
  12. 0 0
      qita/code/DANGER-ZONES.md
  13. 0 0
      qita/code/PERFORMANCE-CHECKLIST.md
  14. 0 0
      qita/code/README.md
  15. 0 0
      qita/code/说明.txt
  16. 0 0
      qita/code_version_md/v4.25-玩家活跃.md
  17. 0 0
      qita/code_version_md/v4.26/v4.26-需求内容.md
  18. 0 0
      qita/debug_doc/项目错误经验记录.md
  19. 0 0
      qita/docs/login-flow-mermaid.md
  20. 0 0
      qita/docs/login-flow-plantuml.puml
  21. 0 0
      qita/md/项目功能梳理文档.md
  22. 0 0
      qita/md_go_migration_api/00-api-go-migration-index.md
  23. 0 0
      qita/md_go_migration_api/01-api-architecture-and-business-domains.md
  24. 0 0
      qita/md_go_migration_api/02-controller-endpoint-inventory.md
  25. 0 0
      qita/md_go_migration_api/03-core-business-flows.md
  26. 0 0
      qita/md_go_migration_api/04-data-dependencies-and-risks.md
  27. 0 0
      qita/md_go_migration_api/05-go-refactor-blueprint.md
  28. 0 0
      qita/md_go_migration_api/11-observability-stack-guide.md
  29. 0 0
      qita/md_go_migration_api/12-development-roadmap-todo.md
  30. 0 0
      qita/review_doc/01-基础设施审查.md
  31. 0 0
      qita/review_doc/02-安全审查.md
  32. 0 0
      qita/review_doc/03-架构设计审查.md
  33. 0 0
      qita/review_doc/04-代码质量审查.md
  34. 0 0
      qita/review_doc/05-性能优化审查.md
  35. 0 0
      qita/review_doc/06-依赖管理审查.md
  36. 0 0
      qita/review_doc/07-测试覆盖审查.md
  37. 0 0
      qita/review_doc/08-文档完整性审查.md
  38. 0 0
      qita/review_doc/09-审查总结报告.md
  39. 0 0
      qita/review_doc/审查计划.md
  40. 466286 0
      qita/sql/new_sdk.sql
  41. 0 0
      qita/重构优化分析.md
  42. 0 0
      qita/重构决策清单.md
  43. 22 0
      supervisor.conf
  44. 55 53
      www/new_sdk/.env
  45. 0 940
      www/new_sdk/.understand-anything/.trash-20260630091809/assembled-graph.json
  46. 0 23611
      www/new_sdk/.understand-anything/.trash-20260630091809/batches.json
  47. 0 31
      www/new_sdk/.understand-anything/.trash-20260630091809/fingerprint-input.json
  48. 0 44
      www/new_sdk/.understand-anything/.trash-20260630091809/review.json
  49. 0 63
      www/new_sdk/.understand-anything/.trash-20260630091809/ua-inline-validate.cjs
  50. 0 980
      www/new_sdk/.understand-anything/.trash-20260630093035/assembled-graph.json
  51. 0 45
      www/new_sdk/.understand-anything/.trash-20260630093035/review.json
  52. 0 10017
      www/new_sdk/.understand-anything/.trash-20260630093035/tmp/scan-files.json
  53. 0 242
      www/new_sdk/.understand-anything/.trash-20260630093035/tmp/ua-graph-validate.js
  54. 0 44
      www/new_sdk/.understand-anything/.trash-20260630093035/tmp/ua-review-results.json
  55. 0 45
      www/new_sdk/.understand-anything/.understandignore
  56. 0 3
      www/new_sdk/.understand-anything/config.json
  57. 0 3712
      www/new_sdk/.understand-anything/fingerprints.json
  58. 0 15106
      www/new_sdk/.understand-anything/intermediate/scan-result.json
  59. 0 980
      www/new_sdk/.understand-anything/knowledge-graph.json
  60. 0 6
      www/new_sdk/.understand-anything/meta.json

+ 37 - 15
AGENTS.md

@@ -4,7 +4,12 @@
 
 游戏SDK平台 — 基于 ThinkPHP 5.0 的多模块应用,涵盖游戏渠道SDK对接、支付回调、公会管理和官网。PHP 7.0–7.2。
 
-**仓库根目录** (`D:\web\composer\new_sdk\new_sdk`) 只有 `www/`,所有应用代码在 `www/new_sdk/` 下。以下路径均相对于 `www/new_sdk/`。
+路径约定:
+
+- **仓库根目录**:以当前检出的项目目录为准,即包含本 `AGENTS.md` 的目录;禁止在说明、脚本或结论中写死某台机器上的绝对路径。
+- **应用根目录**:`<仓库根目录>/www/new_sdk/`。
+- 除非特别标注为“仓库根目录相对路径”,本文中的应用代码路径均相对于 `www/new_sdk/`。
+- 执行检查前先确认当前工作目录和实际文件位置,不要根据历史目录名推断项目路径。
 
 ## 架构
 
@@ -24,7 +29,7 @@
 
 - `application/common/` — 共享代码:`model/`(151个模型)、`logic/`、`library/`、`controller/Base.php`
 - `application/service/` — 顶层服务类(PayService、GamePayService 等)
-- `application/crontab/` — 定时任务,注册在 `application/command.php`,通过 `php think <command>` 调用
+- `application/crontab/` — 定时任务源码,注册在 `application/command.php`;只允许阅读分析,禁止实际执行对应 `php think <command>`
 - `application/extra/` — 扩展配置:`queue.php`(Redis队列)、`kafka.php`、`operatelog.php`
 - `extend/` — 第三方SDK:alipay、alipay_wap、DouYinGameOpen、LdzfPay、XiTaiYouPay、Obs(华为)、tree
 - `public/` — Web根目录,入口文件 `index.php`
@@ -37,9 +42,31 @@
 
 ## 环境配置
 
-环境变量通过 `.env_dev` / `.env_pro` 文件加载(ThinkPHP 的 `Env::get()`)。`APP_STATUS` 常量(`dev`、`stable` 或默认值)决定使用哪个环境文件和路由配置。
+`public/constants.php` 是运行环境入口,负责定义 `APP_STATUS`。当前项目默认使用:
+
+```php
+define('APP_STATUS', 'test');
+```
+
+因此 Web 和 CLI 默认都会继续加载:
+
+```text
+public/constants/test.php
+```
+
+环境对应关系:
 
-**仓库中缺失**:`public/constants.php` 和 `public/constants/*.php` — 定义 `APP_STATUS` 等平台常量,属于部署配置,已 gitignore。
+| `APP_STATUS` | 加载的常量配置 |
+|---|---|
+| `test` | `public/constants/test.php` |
+| `dev` | `public/constants/dev.php` |
+| `stable` | `public/constants/stable.php` |
+
+除非用户明确要求切换环境,否则保持 `APP_STATUS=test`,不要修改为 `dev` 或 `stable`。
+
+数据库、Redis、外部服务密钥等环境变量由应用根目录下的 `.env` 加载,ThinkPHP 通过 `Env::get()` 读取。`.env` 中可能包含真实凭据,读取和输出时必须脱敏,不要将密钥、密码或令牌写入回复、日志或新文档。
+
+Docker Compose 中普通的 `APP_ENV` 不会自动修改 `APP_STATUS`;判断当前环境时必须以 `public/constants.php` 的实际定义为准。
 
 ## 开发命令
 
@@ -49,20 +76,14 @@ composer install
 # 如果系统没有 composer,可以用仓库中已提交的 composer.phar
 php composer.phar install
 
-# 运行定时任务(注册在 application/command.php)
-php think <CommandName>
-
-# 示例:
-php think PolyChannelFlowStats
-php think ChannelSettleMonth
-php think AutoPackage
-
 # PHPUnit(tests/ 目录目前不存在)
 vendor/bin/phpunit
 ```
 
 没有配置 lint、typecheck 或 codegen 命令,没有 CI 工作流。
 
+仓库虽然提供 `think` CLI 入口,但根据本文“禁止操作”,不得执行任何 `php think` 命令。
+
 ## 关键约定
 
 - **PSR-4 自动加载**:`app\` 命名空间映射到 `application/`(composer.json)
@@ -77,7 +98,7 @@ vendor/bin/phpunit
 
 ## 外部服务
 
-- MySQL 7, Redis 5.2.1
+- MySQL、Redis(具体服务端版本以当前部署配置和数据兼容性检查为准)
 - 阿里云OSS / 华为云OBS(文件存储)
 - 支付宝(SDK 在 `extend/alipay/`、`extend/alipay_wap/`)
 - 微信支付(`application/common/library/WeixinPay.php`)
@@ -97,9 +118,10 @@ vendor/bin/phpunit
 
 ## 注意事项
 
-- `public/constants.php` 和 `public/constants/*.php` 已 gitignore — 没有它们应用无法启动,需要为你的环境创建。
+- `public/constants.php` 及 `public/constants/test.php`、`dev.php`、`stable.php` 当前均存在;默认按 `test` 环境分析和运行。
+- 路径必须以当前仓库根目录为基准,不能引用其他检出目录或历史机器上的绝对地址。
 - `application/common.php` 约2000行全局辅助函数(auth_code、curl_post 等)— 所有模块都在用。
-- `.env_dev` 和 `.env_pro` 包含真实凭据。`.gitignore` 列的是 `.env`,但这两个文件名不在其中
+- 应用使用根目录下的 `.env`;其中可能包含真实凭据,检查时必须脱敏,并避免提交或复制到文档
 - `composer.phar` 已提交到仓库 — 系统没有 composer 时可以直接用。
 - `phpunit.xml` 引用的 `tests/` 目录在仓库中不存在。
 - `application/service/` 中有 `_bak` 文件(GamePayService_bak.php、MemberCoinService_bak.php)。

+ 53 - 78
Dockerfile

@@ -1,78 +1,53 @@
-FROM php:7.3-fpm-alpine
-
-WORKDIR "/app"
-
-#COPY ./sources.list /etc/apt/sources.list
-
-# 修改镜像源
-RUN sed -i 's/dl-cdn.alpinelinux.org/mirrors.aliyun.com/g' /etc/apk/repositories
-
-#RUN wget -P /tmp/ http://nginx.org/download/nginx-1.15.11.tar.gz
-#RUN cd /tmp/;tar xzf nginx-1.15.11.tar.gz;cd nginx-1.15.11;sed -i -e 's/1.15.11//g' -e 's/nginx\//WS/g' -e 's/"NGINX"/"WS"/g' src/core/nginx.h
-#RUN cd /tmp/nginx-1.15.11;./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module;make;make install
-
-# 安装依赖,核心扩展,pecl扩展,git,composer,npm工具
-RUN apk update && apk add --no-cache tzdata && apk add nginx && apk add --no-cache --virtual .build-deps \
-        $PHPIZE_DEPS \
-        curl-dev \
-		libzip-dev \
-        libtool \
-        libxml2-dev \
-        sqlite-dev \
-		libmcrypt-dev \
-        freetype-dev \
-        libjpeg-turbo-dev \
-        libpng-dev \
-    && apk add --no-cache \
-        curl \
-        git \
-        mysql-client \
-    # 配置npm中国镜像
-    && pecl install mcrypt-1.0.2 \
-    && docker-php-ext-enable mcrypt \
-    && docker-php-ext-install \
-        bcmath \
-        curl \
-        mbstring \
-        pdo \
-        pdo_mysql \
-        pcntl \
-        tokenizer \
-        xml \
-        zip \
-    && docker-php-ext-configure gd --with-freetype-dir=/usr/include/ --with-jpeg-dir=/usr/include/ \
-    && docker-php-ext-install -j"$(getconf _NPROCESSORS_ONLN)" gd \
-    && pecl install -o -f redis \
-    && rm -rf /tmp/pear \
-    && docker-php-ext-enable redis
-
-# 安装composer并允许root用户运行
-ENV COMPOSER_ALLOW_SUPERUSER=1
-ENV COMPOSER_NO_INTERACTION=1
-ENV COMPOSER_HOME=/usr/local/share/composer
-RUN mkdir -p /usr/local/share/composer \
-	&& curl -o /tmp/composer-setup.php https://getcomposer.org/installer \
-	&& php /tmp/composer-setup.php --no-ansi --install-dir=/usr/local/bin --filename=composer --snapshot \
-	&& rm -f /tmp/composer-setup.* \
-    # 配置composer中国全量镜像
-    && composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/
-
-# Expose port 9000 and start php-fpm server
-#EXPOSE 9000
-
-ENV TZ=Asia/Shanghai
-RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
-
-COPY . /app
-COPY ./nginx/default.conf /etc/nginx/conf.d/
-COPY ./nginx/https.conf /etc/nginx/conf.d/
-COPY ./nginx/nginx.conf /etc/nginx/nginx.conf
-COPY ./php-fpm/up.sh /usr/local/bin
-COPY ./php-fpm/php-ini-overrides.ini /usr/local/etc/php/conf.d/overrides.ini
-
-RUN mkdir -p /run/nginx
-RUN chmod a+x /usr/local/bin/up.sh
-RUN chmod a+x /app/www/new_sdk/crontab.sh
-RUN crontab ./crontabs/crontabfile.txt
-
-CMD ["/bin/sh", "/usr/local/bin/up.sh", "/app/www/new_sdk/crontab.sh"]
+FROM php:7.2-fpm
+
+LABEL maintainer="new_sdk"
+
+# 安装依赖
+RUN apt-get update && apt-get install -y --no-install-recommends \
+    nginx \
+    supervisor \
+    libfreetype6-dev \
+    libjpeg62-turbo-dev \
+    libpng-dev \
+    libxml2-dev \
+    libzip-dev \
+    zip \
+    unzip \
+    git \
+    && rm -rf /var/lib/apt/lists/*
+
+# 安装 PHP 扩展
+RUN docker-php-ext-configure gd --with-freetype-dir=/usr/include/ --with-jpeg-dir=/usr/include/ \
+    && docker-php-ext-install -j$(nproc) \
+    gd \
+    pdo \
+    pdo_mysql \
+    mysqli \
+    xml \
+    zip \
+    bcmath \
+    mbstring \
+    opcache \
+    redis
+
+# 安装 Composer
+COPY --from=composer:latest /usr/bin/composer /usr/bin/composer
+
+# PHP 配置
+RUN cp "$PHP_INI_DIR/php.ini-development" "$PHP_INI_DIR/php.ini"
+RUN sed -i 's/upload_max_filesize = 2M/upload_max_filesize = 50M/' "$PHP_INI_DIR/php.ini" \
+    && sed -i 's/post_max_size = 8M/post_max_size = 55M/' "$PHP_INI_DIR/php.ini" \
+    && sed -i 's/memory_limit = 128M/memory_limit = 256M/' "$PHP_INI_DIR/php.ini" \
+    && sed -i 's/max_execution_time = 30/max_execution_time = 300/' "$PHP_INI_DIR/php.ini" \
+    && sed -i 's/;date.timezone =/date.timezone = Asia\/Shanghai/' "$PHP_INI_DIR/php.ini"
+
+# 目录权限
+RUN chown -R www-data:www-data /var/www/html
+
+# Supervisor 管理进程
+RUN mkdir -p /etc/supervisor/conf.d
+COPY supervisor.conf /etc/supervisor/conf.d/supervisord.conf
+
+EXPOSE 80
+
+CMD ["/usr/bin/supervisord", "-n", "-c", "/etc/supervisor/conf.d/supervisord.conf"]

+ 0 - 6
crontabs/crontabfile.txt

@@ -1,6 +0,0 @@
-0 0 * * * bash /app/script/statistics_handle.sh
-*/30 * * * * bash /app/script/poly_complex_pay.sh
-5-59/30 * * * * bash /app/script/poly_complex_notice.sh
-10 0 * * * bash /app/script/complex_summary.sh
-* * * * * bash /app/script/pay_timeout.sh
-* * * * * sleep 30; bash /app/script/pay_timeout.sh

+ 58 - 14
docker-compose.yml

@@ -1,17 +1,61 @@
-version: "3.1"
+version: '3.8'
+
 services:
-    new_sdk:
-      build: .
-      container_name: new-sdk
-      working_dir: /app
-      volumes:
-        - .:/app
-      ports:
-        - "66:80"
-        - "67:443"
-      networks:
-        - default
+  # PHP-FPM + Nginx
+  app:
+    build:
+      context: .
+      dockerfile: Dockerfile
+    container_name: new_sdk_app
+    ports:
+      - "8080:80"
+    volumes:
+      - ./www/new_sdk:/var/www/html
+      - ./nginx.conf:/etc/nginx/nginx.conf:ro
+    depends_on:
+      - mysql
+      - redis
+    environment:
+      - APP_ENV=dev
+    restart: unless-stopped
+    networks:
+      - sdk_network
 
-networks:
-  default:
+  # MySQL
+  mysql:
+    image: mysql:5.7
+    container_name: new_sdk_mysql
+    ports:
+      - "3306:3306"
+    volumes:
+      - mysql_data:/var/lib/mysql
+    environment:
+      MYSQL_ROOT_PASSWORD: new_sdk_root
+      MYSQL_DATABASE: new_sdk
+      MYSQL_USER: new_sdk
+      MYSQL_PASSWORD: new_sdk_pwd
+      TZ: Asia/Shanghai
+    restart: unless-stopped
+    networks:
+      - sdk_network
+
+  # Redis
+  redis:
+    image: redis:5.2.1
+    container_name: new_sdk_redis
+    ports:
+      - "6379:6379"
+    volumes:
+      - redis_data:/data
+    command: redis-server --requirepass "" --maxmemory 256mb --maxmemory-policy allkeys-lru
+    restart: unless-stopped
+    networks:
+      - sdk_network
 
+volumes:
+  mysql_data:
+  redis_data:
+
+networks:
+  sdk_network:
+    driver: bridge

+ 75 - 0
nginx.conf

@@ -0,0 +1,75 @@
+user www-data;
+worker_processes auto;
+pid /run/nginx.pid;
+daemon off;
+
+events {
+    worker_connections 1024;
+    use epoll;
+}
+
+http {
+    include /etc/nginx/mime.types;
+    default_type application/octet-stream;
+
+    log_format main '$remote_addr - $remote_user [$time_local] "$request" '
+                    '$status $body_bytes_sent "$http_referer" '
+                    '"$http_user_agent" "$http_x_forwarded_for"';
+
+    access_log /var/log/nginx/access.log main;
+    error_log /var/log/nginx/error.log warn;
+
+    sendfile on;
+    tcp_nopush on;
+    tcp_nodelay on;
+    keepalive_timeout 65;
+    types_hash_max_size 2048;
+    client_max_body_size 55m;
+
+    gzip on;
+    gzip_min_length 1k;
+    gzip_comp_level 4;
+    gzip_types text/plain text/css application/json application/javascript text/xml application/xml;
+
+    upstream php-fpm {
+        server 127.0.0.1:9000;
+    }
+
+    server {
+        listen 80;
+        server_name localhost;
+
+        root /var/www/html/public;
+        index index.php index.html index.htm;
+
+        # 支付回调相关 - 重要
+        location / {
+            try_files $uri $uri/ /index.php?$query_string;
+        }
+
+        # PHP 处理
+        location ~ \.php$ {
+            try_files $uri =404;
+            fastcgi_split_path_info ^(.+\.php)(/.+)$;
+            fastcgi_pass php-fpm;
+            fastcgi_index index.php;
+            include fastcgi_params;
+            fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
+            fastcgi_param PATH_INFO $fastcgi_path_info;
+            fastcgi_read_timeout 300;
+        }
+
+        # 禁止访问隐藏文件
+        location ~ /\. {
+            deny all;
+            access_log off;
+            log_not_found off;
+        }
+
+        # 静态资源缓存
+        location ~* \.(js|css|png|jpg|jpeg|gif|ico|svg|woff|woff2|ttf|eot)$ {
+            expires 1y;
+            add_header Cache-Control "public, immutable";
+        }
+    }
+}

API接口清单.md → qita/API接口清单.md


Swagger3.0.json → qita/Swagger3.0.json


code/AI-ONBOARDING.md → qita/code/AI-ONBOARDING.md


code/ARCHITECTURE-RULES.md → qita/code/ARCHITECTURE-RULES.md


code/BUG-LESSONS.md → qita/code/BUG-LESSONS.md


code/CLAUDE.md → qita/code/CLAUDE.md


code/DANGER-ZONES.md → qita/code/DANGER-ZONES.md


code/PERFORMANCE-CHECKLIST.md → qita/code/PERFORMANCE-CHECKLIST.md


code/README.md → qita/code/README.md


code/说明.txt → qita/code/说明.txt


code_version_md/v4.25-玩家活跃.md → qita/code_version_md/v4.25-玩家活跃.md


code_version_md/v4.26/v4.26-需求内容.md → qita/code_version_md/v4.26/v4.26-需求内容.md


debug_doc/项目错误经验记录.md → qita/debug_doc/项目错误经验记录.md


docs/login-flow-mermaid.md → qita/docs/login-flow-mermaid.md


docs/login-flow-plantuml.puml → qita/docs/login-flow-plantuml.puml


md/项目功能梳理文档.md → qita/md/项目功能梳理文档.md


md_go_migration_api/00-api-go-migration-index.md → qita/md_go_migration_api/00-api-go-migration-index.md


md_go_migration_api/01-api-architecture-and-business-domains.md → qita/md_go_migration_api/01-api-architecture-and-business-domains.md


md_go_migration_api/02-controller-endpoint-inventory.md → qita/md_go_migration_api/02-controller-endpoint-inventory.md


md_go_migration_api/03-core-business-flows.md → qita/md_go_migration_api/03-core-business-flows.md


md_go_migration_api/04-data-dependencies-and-risks.md → qita/md_go_migration_api/04-data-dependencies-and-risks.md


md_go_migration_api/05-go-refactor-blueprint.md → qita/md_go_migration_api/05-go-refactor-blueprint.md


md_go_migration_api/11-observability-stack-guide.md → qita/md_go_migration_api/11-observability-stack-guide.md


md_go_migration_api/12-development-roadmap-todo.md → qita/md_go_migration_api/12-development-roadmap-todo.md


review_doc/01-基础设施审查.md → qita/review_doc/01-基础设施审查.md


review_doc/02-安全审查.md → qita/review_doc/02-安全审查.md


review_doc/03-架构设计审查.md → qita/review_doc/03-架构设计审查.md


review_doc/04-代码质量审查.md → qita/review_doc/04-代码质量审查.md


review_doc/05-性能优化审查.md → qita/review_doc/05-性能优化审查.md


review_doc/06-依赖管理审查.md → qita/review_doc/06-依赖管理审查.md


review_doc/07-测试覆盖审查.md → qita/review_doc/07-测试覆盖审查.md


review_doc/08-文档完整性审查.md → qita/review_doc/08-文档完整性审查.md


review_doc/09-审查总结报告.md → qita/review_doc/09-审查总结报告.md


review_doc/审查计划.md → qita/review_doc/审查计划.md


تفاوت فایلی نمایش داده نمی شود زیرا این فایل بسیار بزرگ است
+ 466286 - 0
qita/sql/new_sdk.sql


重构优化分析.md → qita/重构优化分析.md


重构决策清单.md → qita/重构决策清单.md


+ 22 - 0
supervisor.conf

@@ -0,0 +1,22 @@
+[supervisord]
+nodaemon=true
+logfile=/var/log/supervisord.log
+pidfile=/var/run/supervisord.pid
+
+[program:nginx]
+command=/usr/sbin/nginx -g "daemon off;"
+autostart=true
+autorestart=true
+stdout_logfile=/dev/stdout
+stdout_logfile_maxbytes=0
+stderr_logfile=/dev/stderr
+stderr_logfile_maxbytes=0
+
+[program:php-fpm]
+command=/usr/local/sbin/php-fpm
+autostart=true
+autorestart=true
+stdout_logfile=/dev/stdout
+stdout_logfile_maxbytes=0
+stderr_logfile=/dev/stderr
+stderr_logfile_maxbytes=0

+ 55 - 53
www/new_sdk/.env

@@ -1,45 +1,62 @@
 app_debug=true
 app_trace=false
-api_debug=true
+api_debug=false
 
 
 # sdk游戏账户注册的区分标识
-sdk_mark_type=_dev
+sdk_mark_type=dev
 pay_handle_version=v3.4.2
+pay_qr_handle_version=v3.4.5
 
 # ## 官网 HOME 模块 ##
 # 支付回调域名
-HTTP_HOST_URL=devsdkapi.newsdk.com
-HTTP_HOST_URL_ALL=http://devsdkapi.newsdk.com
-HTTP_HOST_URL_WWW=http://devwww.newsdk.com
-HTTP_HOST_URL_M=http://devm.newsdk.com
+#HTTP_HOST_URL=sdkapi.newsdk.com
+HTTP_HOST_URL_ALL=http://sdkapi.newsdk.com
+HTTP_HOST_URL_WWW=http://www.newsdk.com
+HTTP_HOST_URL_M=http://m.newsdk.com
 HTTP_HOST_URL_Static=http://static.newsdk.com
 HTTP_HOST_URL_DOWNAPP=https://cdn.newsdk.com
-HTTP_HOST_URL_CPS=http://devcps.newsdk.com
-HTTP_HOST_URL_H5=http://devsdkh5.qmgames.cn
+HTTP_HOST_URL_CPS=http://cps.newsdk.com
+HTTP_HOST_URL_H5=http://h5.newsdk.com
 
 # 上传文件保存场所 = ali:阿里云, local:本地
-UPLOAD_SAVE_PLACE=ali
+UPLOAD_SAVE_PLACE=local
 # 游戏分包的Bucket名
 PACKAGE_BUCKET=
 # auth_code 加解密密钥
-AUTH_KEY=xxx
+AUTH_KEY=1787649857790
 # 后台密码加密前缀
 ADMIN_PASS_PRE=ayadm
 # 母包上传目录
 MUBAO_PATH=mubao/
 # 支付回调域名
-HTTP_HOST_URL=devsdkapi.newsdk.com
+HTTP_HOST_URL=sdkapi.newsdk.com
 # 客户端加密标识
-AES_KEY=xxxx
+AES_KEY=1787649861789
+AES_KEY_H5=1787649868790
 
 [database]
-hostname=xxx
+# 本地
+hostname=127.0.0.1
 database=new_sdk
-username=xxx
-password='xxx'
+username=root
+password=root
 hostport=3306
 
+# 测试服
+hostname=47.97.190.250
+database=new_sdk
+username=develop
+password="g!vXZv3eTL3%E5^B@&T="
+hostport=3306
+
+# 正式服_本地代理
+#hostname=127.0.0.1
+#database=new_sdk
+#username=develop
+#password="ujwu^&Fi32uhGFt7812KSk2"
+#hostport=3307
+
 [redis]
 host=127.0.0.1
 port=6379
@@ -49,8 +66,8 @@ select=0
 seelect_go=1
 
 [ali_oss]
-access_keysid=xxx
-access_keysecrt=xxx
+access_keysid=
+access_keysecrt=
 access_endpoint=oss-cn-hangzhou.aliyuncs.com
 access_bucket=new-sdk
 
@@ -62,21 +79,22 @@ bucket=
 
 [py]
 #判断游戏母包的地址
-use_ip=http://127.0.0.1:9998
+use_ip=http://172.19.60.11:9998
 
 [ws]
 # 注册中心地址
-register_addr=127.0.0.1:3238
+register_addr=127.0.0.1:3138
 # ws 连接地址
-ws_addr=ws://127.0.0.1:8282/
+ws_addr=ws://127.0.0.1:8182/
 
 ## 钉钉通知 ##
 [dingtalk]
-server_name=DEV_祈盟SDK
-warning_url='https://oapi.dingtalk.com/robot/send?access_token=xxxx'
-notic_url='https://oapi.dingtalk.com/robot/send?access_token=xxx'
-operat_url='https://oapi.dingtalk.com/robot/send?access_token=xxx'
-notice_weelfar_url='https://oapi.dingtalk.com/robot/send?access_token=xxx'
+server_name=TEST_祈盟SDK
+warning_url=''
+notic_url=''
+operat_url=''
+notice_weelfar_url=''
+notice_qdyfk_url=''
 
 ## 微信公众号 ##
 [wechat]
@@ -84,60 +102,44 @@ appid=''
 appsecret=''
 
 [juliang]
-app_id='xxx'
-secret='xxx'
+app_id=''
+secret=''
 
 [mubao]
 down_url=https://sdkdevdown.newsdk.com
-upload_url=http://sdkdevpack.newsdk.com
-
-# 176 的配置
-[yql]
-# 测试
-api_url=http://devapi.176park.com:8081
-# 正式
-#api_url=https://api.176park.com:8081
-api_sign_key='xxx'
-app_url=http://devh5.176park.com/
-app_hash_key='Su)xxx'
+#upload_url=http://sdkdevpack.newsdk.com
+upload_url=http://127.0.0.1:6060
 
 # 祈盟聚合
 [qmjh]
-api_sign_key='xxx'
+api_sign_key=''
 
 # 聚合渠道
 [complex]
 # 三九互娱配置了商品的游戏
 sj_game_ids=286_kdzz
 
-
 # 请求频率次数限制(3次/60s)
 request_requency_time=60
 request_requency_count=3
 
-[kafka]
-bootstrap_servers=localhost:9092
-group_id=new_sdk_group
-default_topic=new_sdk_topic
-debug=false
-
 # 支付配置-趣智连
 [pay_qzl]
-app_id=xxx
-mch_no=xxx
-pay_key=xxx
+app_id=
+mch_no=
+pay_key=
 
 # 中宣配置 #
 [zhongxuan]
-app_id=xxx
-secret_key=xxxx
+app_id=
+secret_key=
 
 # 飞书通知
 [feishu]
-notice_url=https://open.feishu.cn/open-apis/bot/v2/hook/xxxx
+notice_url=
 
 # 默认有效期15天
 [jwt]
-jwt_key=xxxx
+jwt_key=1787649882789
 exp_time=1296000
 

+ 0 - 940
www/new_sdk/.understand-anything/.trash-20260630091809/assembled-graph.json

@@ -1,940 +0,0 @@
-{
-  "nodes": [
-    {
-      "id": "document:README.md",
-      "type": "document",
-      "name": "README.md",
-      "filePath": "README.md",
-      "summary": "项目说明文档,描述游戏SDK平台的域名配置、环境要求和相关服务",
-      "tags": [
-        "documentation",
-        "project-overview"
-      ],
-      "complexity": "simple"
-    },
-    {
-      "id": "config:composer.json",
-      "type": "config",
-      "name": "composer.json",
-      "filePath": "composer.json",
-      "summary": "PHP依赖管理配置文件,定义ThinkPHP 5.0框架及支付、队列等依赖包",
-      "tags": [
-        "php",
-        "dependencies",
-        "composer"
-      ],
-      "complexity": "simple"
-    },
-    {
-      "id": "file:public/index.php",
-      "type": "file",
-      "name": "index.php",
-      "filePath": "public/index.php",
-      "summary": "应用入口文件,设置CORS头、定义应用路径、加载常量配置和框架引导",
-      "tags": [
-        "entry-point",
-        "php",
-        "bootstrap"
-      ],
-      "complexity": "simple"
-    },
-    {
-      "id": "config:application/config.php",
-      "type": "config",
-      "name": "config.php",
-      "filePath": "application/config.php",
-      "summary": "应用主配置文件,定义模块设置、URL路由、数据库缓存、模板引擎等核心配置",
-      "tags": [
-        "config",
-        "thinkphp",
-        "application"
-      ],
-      "complexity": "moderate"
-    },
-    {
-      "id": "file:application/route.php",
-      "type": "file",
-      "name": "route.php",
-      "filePath": "application/route.php",
-      "summary": "路由配置文件,定义域名到模块的映射(admin/api/guildapi/complex/home/mobile),配置PC站和M站路由规则",
-      "tags": [
-        "routing",
-        "thinkphp",
-        "domain-mapping"
-      ],
-      "complexity": "complex"
-    },
-    {
-      "id": "file:application/common.php",
-      "type": "file",
-      "name": "common.php",
-      "filePath": "application/common.php",
-      "summary": "公共函数库,包含随机数生成、数组排序、加密解密、HTTP请求、日期处理等通用工具函数",
-      "tags": [
-        "utility",
-        "common",
-        "helper"
-      ],
-      "complexity": "moderate"
-    },
-    {
-      "id": "file:application/tags.php",
-      "type": "file",
-      "name": "tags.php",
-      "filePath": "application/tags.php",
-      "summary": "行为扩展定义文件,配置应用初始化、路由开始、模块初始化等钩子",
-      "tags": [
-        "hooks",
-        "lifecycle",
-        "thinkphp"
-      ],
-      "complexity": "simple"
-    },
-    {
-      "id": "file:application/command.php",
-      "type": "file",
-      "name": "command.php",
-      "filePath": "application/command.php",
-      "summary": "命令行配置文件,注册自定义命令如Kafka消费者",
-      "tags": [
-        "cli",
-        "commands",
-        "kafka"
-      ],
-      "complexity": "simple"
-    },
-    {
-      "id": "file:application/admin/common.php",
-      "type": "file",
-      "name": "admin/common.php",
-      "filePath": "application/admin/common.php",
-      "summary": "后台公共函数库,包含权限检查、日志记录、数据格式化等后台专用工具函数",
-      "tags": [
-        "admin",
-        "utility",
-        "helper"
-      ],
-      "complexity": "moderate"
-    },
-    {
-      "id": "file:application/admin/controller/Admin.php",
-      "type": "file",
-      "name": "Admin.php",
-      "filePath": "application/admin/controller/Admin.php",
-      "summary": "后台公共控制器基类,实现登录验证、权限检查、WebSocket令牌管理",
-      "tags": [
-        "admin",
-        "controller",
-        "base-class",
-        "auth"
-      ],
-      "complexity": "moderate"
-    },
-    {
-      "id": "file:application/api/common.php",
-      "type": "file",
-      "name": "api/common.php",
-      "filePath": "application/api/common.php",
-      "summary": "API模块公共函数库,包含API签名验证、参数加密解密、渠道鉴权等",
-      "tags": [
-        "api",
-        "utility",
-        "auth"
-      ],
-      "complexity": "moderate"
-    },
-    {
-      "id": "file:application/api/controller/v1/Login.php",
-      "type": "file",
-      "name": "Login.php",
-      "filePath": "application/api/controller/v1/Login.php",
-      "summary": "用户登录控制器,处理账号密码登录、手机验证码登录、第三方登录等",
-      "tags": [
-        "api",
-        "login",
-        "authentication"
-      ],
-      "complexity": "moderate"
-    },
-    {
-      "id": "file:application/api/controller/v1/Pay.php",
-      "type": "file",
-      "name": "Pay.php",
-      "filePath": "application/api/controller/v1/Pay.php",
-      "summary": "支付控制器,处理游戏内充值、创建订单、调用支付渠道(支付宝/微信)",
-      "tags": [
-        "api",
-        "payment",
-        "alipay",
-        "wechat"
-      ],
-      "complexity": "complex"
-    },
-    {
-      "id": "file:application/api/controller/v1/PayNotify.php",
-      "type": "file",
-      "name": "PayNotify.php",
-      "filePath": "application/api/controller/v1/PayNotify.php",
-      "summary": "支付回调控制器,接收支付宝/微信支付结果通知,更新订单状态",
-      "tags": [
-        "api",
-        "payment",
-        "callback",
-        "webhook"
-      ],
-      "complexity": "complex"
-    },
-    {
-      "id": "file:application/api/controller/v1/Index.php",
-      "type": "file",
-      "name": "Index.php",
-      "filePath": "application/api/controller/v1/Index.php",
-      "summary": "API首页控制器,处理游戏列表、游戏详情、推广页面等",
-      "tags": [
-        "api",
-        "game",
-        "index"
-      ],
-      "complexity": "moderate"
-    },
-    {
-      "id": "file:application/service/PayService.php",
-      "type": "file",
-      "name": "PayService.php",
-      "filePath": "application/service/PayService.php",
-      "summary": "支付服务类,封装支付宝WAP支付、APP支付、扫码支付等支付方式的调用逻辑",
-      "tags": [
-        "service",
-        "payment",
-        "alipay",
-        "core"
-      ],
-      "complexity": "complex"
-    },
-    {
-      "id": "file:application/service/GamePayService.php",
-      "type": "file",
-      "name": "GamePayService.php",
-      "filePath": "application/service/GamePayService.php",
-      "summary": "游戏支付服务类,处理游戏充值订单创建、支付渠道选择、回调处理",
-      "tags": [
-        "service",
-        "payment",
-        "game"
-      ],
-      "complexity": "complex"
-    },
-    {
-      "id": "file:application/service/CommonService.php",
-      "type": "file",
-      "name": "CommonService.php",
-      "filePath": "application/service/CommonService.php",
-      "summary": "通用服务类,提供数据查询、缓存管理、配置获取等基础服务",
-      "tags": [
-        "service",
-        "common",
-        "utility"
-      ],
-      "complexity": "moderate"
-    },
-    {
-      "id": "file:application/common/model/Game.php",
-      "type": "file",
-      "name": "Game.php",
-      "filePath": "application/common/model/Game.php",
-      "summary": "游戏数据模型,定义游戏表结构和关联关系",
-      "tags": [
-        "model",
-        "game",
-        "database"
-      ],
-      "complexity": "moderate"
-    },
-    {
-      "id": "file:application/common/model/Members.php",
-      "type": "file",
-      "name": "Members.php",
-      "filePath": "application/common/model/Members.php",
-      "summary": "会员数据模型,定义用户表结构、登录状态、充值记录等关联",
-      "tags": [
-        "model",
-        "user",
-        "database"
-      ],
-      "complexity": "moderate"
-    },
-    {
-      "id": "file:application/common/model/Pay.php",
-      "type": "file",
-      "name": "Pay.php",
-      "filePath": "application/common/model/Pay.php",
-      "summary": "支付订单数据模型,定义订单表结构、支付状态、退款记录等",
-      "tags": [
-        "model",
-        "payment",
-        "database"
-      ],
-      "complexity": "moderate"
-    },
-    {
-      "id": "file:application/common/model/Channel.php",
-      "type": "file",
-      "name": "Channel.php",
-      "filePath": "application/common/model/Channel.php",
-      "summary": "渠道数据模型,定义渠道表结构、渠道配置、分成比例等",
-      "tags": [
-        "model",
-        "channel",
-        "database"
-      ],
-      "complexity": "moderate"
-    },
-    {
-      "id": "file:application/common/model/Admin.php",
-      "type": "file",
-      "name": "Admin.php",
-      "filePath": "application/common/model/Admin.php",
-      "summary": "管理员数据模型,定义后台用户表结构、角色权限关联",
-      "tags": [
-        "model",
-        "admin",
-        "database"
-      ],
-      "complexity": "moderate"
-    },
-    {
-      "id": "file:application/common/controller/Base.php",
-      "type": "file",
-      "name": "Base.php",
-      "filePath": "application/common/controller/Base.php",
-      "summary": "基础控制器类,提供跨模块的公共方法如响应输出、日志记录、异常处理",
-      "tags": [
-        "controller",
-        "base-class",
-        "common"
-      ],
-      "complexity": "moderate"
-    },
-    {
-      "id": "file:application/guildapi/controller",
-      "type": "file",
-      "name": "guildapi/controllers",
-      "filePath": "application/guildapi/controller",
-      "summary": "公会API控制器目录,处理公会后台的频道管理、数据统计、结算等接口",
-      "tags": [
-        "guild",
-        "api",
-        "controller"
-      ],
-      "complexity": "moderate"
-    },
-    {
-      "id": "file:application/complex/controller",
-      "type": "file",
-      "name": "complex/controllers",
-      "filePath": "application/complex/controller",
-      "summary": "渠道SDK对接控制器目录,处理第三方渠道的登录、支付、数据同步等",
-      "tags": [
-        "complex",
-        "channel",
-        "sdk"
-      ],
-      "complexity": "complex"
-    },
-    {
-      "id": "file:application/home/controller",
-      "type": "file",
-      "name": "home/controllers",
-      "filePath": "application/home/controller",
-      "summary": "官网控制器目录,处理PC端官网的游戏展示、用户中心、客服系统等",
-      "tags": [
-        "home",
-        "website",
-        "frontend"
-      ],
-      "complexity": "moderate"
-    },
-    {
-      "id": "file:application/mobile/controller",
-      "type": "file",
-      "name": "mobile/controllers",
-      "filePath": "application/mobile/controller",
-      "summary": "移动端控制器目录,处理H5端的游戏展示、用户中心、支付等",
-      "tags": [
-        "mobile",
-        "h5",
-        "frontend"
-      ],
-      "complexity": "moderate"
-    },
-    {
-      "id": "file:application/crontab",
-      "type": "file",
-      "name": "crontab",
-      "filePath": "application/crontab",
-      "summary": "定时任务目录,包含渠道结算、数据统计、支付超时处理等定时任务",
-      "tags": [
-        "cron",
-        "scheduled",
-        "batch"
-      ],
-      "complexity": "moderate"
-    },
-    {
-      "id": "file:application/command/KafkaConsumer.php",
-      "type": "file",
-      "name": "KafkaConsumer.php",
-      "filePath": "application/command/KafkaConsumer.php",
-      "summary": "Kafka消费者命令,异步处理消息队列中的任务",
-      "tags": [
-        "kafka",
-        "queue",
-        "async"
-      ],
-      "complexity": "moderate"
-    },
-    {
-      "id": "file:extend/alipay",
-      "type": "file",
-      "name": "alipay SDK",
-      "filePath": "extend/alipay",
-      "summary": "支付宝SDK扩展目录,包含支付宝支付接口的PHP实现",
-      "tags": [
-        "alipay",
-        "sdk",
-        "payment"
-      ],
-      "complexity": "complex"
-    },
-    {
-      "id": "file:extend/DouYinGameOpen",
-      "type": "file",
-      "name": "DouYinGameOpen",
-      "filePath": "extend/DouYinGameOpen",
-      "summary": "抖音游戏开放平台SDK,处理抖音渠道的登录和支付",
-      "tags": [
-        "douyin",
-        "sdk",
-        "channel"
-      ],
-      "complexity": "moderate"
-    },
-    {
-      "id": "file:extend/LdzfPay",
-      "type": "file",
-      "name": "LdzfPay",
-      "filePath": "extend/LdzfPay",
-      "summary": "联动支付SDK扩展,提供联动优势支付渠道的接入",
-      "tags": [
-        "ldzf",
-        "sdk",
-        "payment"
-      ],
-      "complexity": "moderate"
-    },
-    {
-      "id": "file:extend/Obs",
-      "type": "file",
-      "name": "ObsClient",
-      "filePath": "extend/Obs",
-      "summary": "华为云OBS客户端扩展,用于对象存储服务(文件上传下载)",
-      "tags": [
-        "huawei",
-        "obs",
-        "storage"
-      ],
-      "complexity": "moderate"
-    },
-    {
-      "id": "file:thinkphp",
-      "type": "file",
-      "name": "ThinkPHP Framework",
-      "filePath": "thinkphp",
-      "summary": "ThinkPHP 5.0框架核心目录,包含路由、控制器、模型、视图等核心组件",
-      "tags": [
-        "framework",
-        "thinkphp",
-        "core"
-      ],
-      "complexity": "complex"
-    },
-    {
-      "id": "file:public/static",
-      "type": "file",
-      "name": "static assets",
-      "filePath": "public/static",
-      "summary": "静态资源目录,包含CSS、JavaScript、图片、字体等前端资源",
-      "tags": [
-        "static",
-        "frontend",
-        "assets"
-      ],
-      "complexity": "simple"
-    },
-    {
-      "id": "file:application/admin/view",
-      "type": "file",
-      "name": "admin views",
-      "filePath": "application/admin/view",
-      "summary": "后台视图模板目录,包含后台管理界面的HTML模板文件",
-      "tags": [
-        "admin",
-        "view",
-        "template"
-      ],
-      "complexity": "simple"
-    },
-    {
-      "id": "config:.env_dev",
-      "type": "config",
-      "name": ".env_dev",
-      "filePath": ".env_dev",
-      "summary": "开发环境配置文件,包含数据库连接、Redis配置、第三方服务密钥等",
-      "tags": [
-        "config",
-        "env",
-        "development"
-      ],
-      "complexity": "simple"
-    },
-    {
-      "id": "config:.env_pro",
-      "type": "config",
-      "name": ".env_pro",
-      "filePath": ".env_pro",
-      "summary": "生产环境配置文件,包含生产数据库、Redis、支付密钥等敏感配置",
-      "tags": [
-        "config",
-        "env",
-        "production"
-      ],
-      "complexity": "simple"
-    },
-    {
-      "id": "file:public/constants.php",
-      "type": "file",
-      "name": "constants.php",
-      "filePath": "public/constants.php",
-      "summary": "全局常量定义文件,定义域名、路径、状态码等应用常量",
-      "tags": [
-        "constants",
-        "config",
-        "global"
-      ],
-      "complexity": "simple"
-    },
-    {
-      "id": "file:application/common/library",
-      "type": "file",
-      "name": "common/library",
-      "filePath": "application/common/library",
-      "summary": "公共类库目录,包含WebSocket、短信发送、文件处理、数据导出等工具类",
-      "tags": [
-        "library",
-        "common",
-        "utility"
-      ],
-      "complexity": "moderate"
-    },
-    {
-      "id": "file:application/common/logic",
-      "type": "file",
-      "name": "common/logic",
-      "filePath": "application/common/logic",
-      "summary": "公共业务逻辑目录,包含支付工厂、子包管理、数据同步等业务逻辑",
-      "tags": [
-        "logic",
-        "business",
-        "common"
-      ],
-      "complexity": "moderate"
-    },
-    {
-      "id": "file:application/common/validate",
-      "type": "file",
-      "name": "common/validate",
-      "filePath": "application/common/validate",
-      "summary": "公共验证器目录,定义请求参数验证规则",
-      "tags": [
-        "validate",
-        "common",
-        "input"
-      ],
-      "complexity": "simple"
-    },
-    {
-      "id": "file:application/extra",
-      "type": "file",
-      "name": "extra configs",
-      "filePath": "application/extra",
-      "summary": "扩展配置目录,包含Kafka配置、队列配置、操作日志配置等",
-      "tags": [
-        "config",
-        "extra",
-        "kafka"
-      ],
-      "complexity": "simple"
-    }
-  ],
-  "edges": [
-    {
-      "source": "file:public/index.php",
-      "target": "config:application/config.php",
-      "type": "loads",
-      "weight": 0.8
-    },
-    {
-      "source": "file:public/index.php",
-      "target": "file:application/route.php",
-      "type": "loads",
-      "weight": 0.7
-    },
-    {
-      "source": "file:public/index.php",
-      "target": "file:thinkphp",
-      "type": "imports",
-      "weight": 0.9
-    },
-    {
-      "source": "file:application/admin/controller/Admin.php",
-      "target": "file:application/common/controller/Base.php",
-      "type": "inherits",
-      "weight": 0.9
-    },
-    {
-      "source": "file:application/admin/controller/Admin.php",
-      "target": "file:application/common/model/Admin.php",
-      "type": "uses",
-      "weight": 0.7
-    },
-    {
-      "source": "file:application/api/controller/v1/Pay.php",
-      "target": "file:application/service/PayService.php",
-      "type": "calls",
-      "weight": 0.8
-    },
-    {
-      "source": "file:application/api/controller/v1/Pay.php",
-      "target": "file:application/service/GamePayService.php",
-      "type": "calls",
-      "weight": 0.8
-    },
-    {
-      "source": "file:application/service/PayService.php",
-      "target": "file:extend/alipay",
-      "type": "imports",
-      "weight": 0.8
-    },
-    {
-      "source": "file:application/api/controller/v1/PayNotify.php",
-      "target": "file:application/service/PayService.php",
-      "type": "calls",
-      "weight": 0.8
-    },
-    {
-      "source": "file:application/api/controller/v1/PayNotify.php",
-      "target": "file:application/service/GamePayService.php",
-      "type": "calls",
-      "weight": 0.8
-    },
-    {
-      "source": "file:application/service/GamePayService.php",
-      "target": "file:application/common/model/Pay.php",
-      "type": "uses",
-      "weight": 0.8
-    },
-    {
-      "source": "file:application/service/GamePayService.php",
-      "target": "file:application/common/model/Game.php",
-      "type": "uses",
-      "weight": 0.7
-    },
-    {
-      "source": "file:application/service/GamePayService.php",
-      "target": "file:application/common/model/Members.php",
-      "type": "uses",
-      "weight": 0.7
-    },
-    {
-      "source": "file:application/api/controller/v1/Login.php",
-      "target": "file:application/common/model/Members.php",
-      "type": "uses",
-      "weight": 0.8
-    },
-    {
-      "source": "file:application/common/model/Game.php",
-      "target": "file:application/common/model/Channel.php",
-      "type": "related",
-      "weight": 0.6
-    },
-    {
-      "source": "file:application/common/model/Pay.php",
-      "target": "file:application/common/model/Members.php",
-      "type": "related",
-      "weight": 0.7
-    },
-    {
-      "source": "file:application/crontab",
-      "target": "file:application/common/model/Channel.php",
-      "type": "uses",
-      "weight": 0.6
-    },
-    {
-      "source": "file:application/crontab",
-      "target": "file:application/common/model/Pay.php",
-      "type": "uses",
-      "weight": 0.6
-    },
-    {
-      "source": "file:application/command/KafkaConsumer.php",
-      "target": "file:application/extra",
-      "type": "configures",
-      "weight": 0.5
-    },
-    {
-      "source": "file:application/complex/controller",
-      "target": "file:extend/DouYinGameOpen",
-      "type": "imports",
-      "weight": 0.7
-    },
-    {
-      "source": "file:application/home/controller",
-      "target": "file:application/common/controller/Base.php",
-      "type": "inherits",
-      "weight": 0.8
-    },
-    {
-      "source": "file:application/mobile/controller",
-      "target": "file:application/common/controller/Base.php",
-      "type": "inherits",
-      "weight": 0.8
-    },
-    {
-      "source": "config:.env_dev",
-      "target": "config:application/config.php",
-      "type": "configures",
-      "weight": 0.9
-    },
-    {
-      "source": "config:.env_pro",
-      "target": "config:application/config.php",
-      "type": "configures",
-      "weight": 0.9
-    }
-  ],
-  "layers": [
-    {
-      "id": "layer:entry",
-      "name": "入口层",
-      "description": "应用入口和框架引导,包含index.php和ThinkPHP框架启动",
-      "nodeIds": [
-        "file:public/index.php",
-        "file:thinkphp",
-        "file:public/constants.php"
-      ]
-    },
-    {
-      "id": "layer:config",
-      "name": "配置层",
-      "description": "应用配置、环境变量、路由规则等配置文件",
-      "nodeIds": [
-        "config:application/config.php",
-        "config:.env_dev",
-        "config:.env_pro",
-        "file:application/route.php",
-        "file:application/tags.php",
-        "file:application/command.php",
-        "file:application/extra"
-      ]
-    },
-    {
-      "id": "layer:model",
-      "name": "数据模型层",
-      "description": "数据库表结构定义、ORM模型、数据关联关系",
-      "nodeIds": [
-        "file:application/common/model/Game.php",
-        "file:application/common/model/Members.php",
-        "file:application/common/model/Pay.php",
-        "file:application/common/model/Channel.php",
-        "file:application/common/model/Admin.php"
-      ]
-    },
-    {
-      "id": "layer:service",
-      "name": "服务层",
-      "description": "业务服务类,封装核心业务逻辑如支付、游戏、会员等",
-      "nodeIds": [
-        "file:application/service/PayService.php",
-        "file:application/service/GamePayService.php",
-        "file:application/service/CommonService.php"
-      ]
-    },
-    {
-      "id": "layer:controller",
-      "name": "控制器层",
-      "description": "HTTP请求处理,包含后台管理、API接口、官网、移动端等控制器",
-      "nodeIds": [
-        "file:application/admin/controller/Admin.php",
-        "file:application/api/controller/v1/Login.php",
-        "file:application/api/controller/v1/Pay.php",
-        "file:application/api/controller/v1/PayNotify.php",
-        "file:application/api/controller/v1/Index.php",
-        "file:application/common/controller/Base.php"
-      ]
-    },
-    {
-      "id": "layer:business",
-      "name": "业务模块层",
-      "description": "按业务领域划分的模块,包含公会API、渠道SDK、官网、移动端等",
-      "nodeIds": [
-        "file:application/guildapi/controller",
-        "file:application/complex/controller",
-        "file:application/home/controller",
-        "file:application/mobile/controller"
-      ]
-    },
-    {
-      "id": "layer:common",
-      "name": "公共层",
-      "description": "跨模块共享的工具函数、类库、业务逻辑、验证器",
-      "nodeIds": [
-        "file:application/common.php",
-        "file:application/admin/common.php",
-        "file:application/api/common.php",
-        "file:application/common/library",
-        "file:application/common/logic",
-        "file:application/common/validate"
-      ]
-    },
-    {
-      "id": "layer:extension",
-      "name": "扩展层",
-      "description": "第三方SDK扩展,包含支付宝、抖音、联动支付等支付渠道SDK",
-      "nodeIds": [
-        "file:extend/alipay",
-        "file:extend/DouYinGameOpen",
-        "file:extend/LdzfPay",
-        "file:extend/Obs"
-      ]
-    },
-    {
-      "id": "layer:task",
-      "name": "任务层",
-      "description": "定时任务和异步任务,包含渠道结算、数据统计、消息队列消费",
-      "nodeIds": [
-        "file:application/crontab",
-        "file:application/command/KafkaConsumer.php"
-      ]
-    },
-    {
-      "id": "layer:frontend",
-      "name": "前端层",
-      "description": "前端资源和视图模板,包含静态文件、后台模板、官网页面",
-      "nodeIds": [
-        "file:public/static",
-        "file:application/admin/view"
-      ]
-    },
-    {
-      "id": "layer:docs",
-      "name": "文档层",
-      "description": "项目文档和依赖配置",
-      "nodeIds": [
-        "document:README.md",
-        "config:composer.json"
-      ]
-    }
-  ],
-  "tour": [
-    {
-      "order": 1,
-      "title": "项目概览",
-      "description": "阅读README了解项目背景:这是一个基于ThinkPHP 5.0的游戏SDK平台,包含后台管理、API接口、公会系统、渠道SDK对接等模块",
-      "nodeIds": [
-        "document:README.md"
-      ]
-    },
-    {
-      "order": 2,
-      "title": "应用入口",
-      "description": "从public/index.php开始,了解应用如何启动:设置CORS头、加载常量配置、引入ThinkPHP框架",
-      "nodeIds": [
-        "file:public/index.php"
-      ]
-    },
-    {
-      "order": 3,
-      "title": "路由配置",
-      "description": "查看route.php理解域名路由映射:不同子域名(admin/api/www/m等)对应不同模块,实现多站点共用一套代码",
-      "nodeIds": [
-        "file:application/route.php"
-      ]
-    },
-    {
-      "order": 4,
-      "title": "配置系统",
-      "description": "了解配置层:.env文件存储环境变量,config.php读取环境配置,extra目录存放扩展配置",
-      "nodeIds": [
-        "config:.env_dev",
-        "config:application/config.php",
-        "file:application/extra"
-      ]
-    },
-    {
-      "order": 5,
-      "title": "数据模型",
-      "description": "浏览common/model目录,了解核心数据表:Game(游戏)、Members(会员)、Pay(订单)、Channel(渠道)",
-      "nodeIds": [
-        "file:application/common/model/Game.php",
-        "file:application/common/model/Members.php",
-        "file:application/common/model/Pay.php"
-      ]
-    },
-    {
-      "order": 6,
-      "title": "支付流程",
-      "description": "追踪支付核心链路:Pay控制器 → PayService → 支付宝SDK,理解订单创建和回调处理",
-      "nodeIds": [
-        "file:application/api/controller/v1/Pay.php",
-        "file:application/service/PayService.php",
-        "file:extend/alipay"
-      ]
-    },
-    {
-      "order": 7,
-      "title": "后台管理",
-      "description": "了解后台管理系统:Admin基类控制器实现权限检查,各业务控制器继承实现具体功能",
-      "nodeIds": [
-        "file:application/admin/controller/Admin.php",
-        "file:application/common/controller/Base.php"
-      ]
-    },
-    {
-      "order": 8,
-      "title": "业务模块",
-      "description": "了解多模块架构:api(游戏API)、guildapi(公会API)、complex(渠道SDK)、home(官网)、mobile(移动端)",
-      "nodeIds": [
-        "file:application/guildapi/controller",
-        "file:application/complex/controller",
-        "file:application/home/controller"
-      ]
-    },
-    {
-      "order": 9,
-      "title": "定时任务",
-      "description": "查看crontab目录,了解定时任务:渠道结算、数据统计、支付超时处理等后台批处理",
-      "nodeIds": [
-        "file:application/crontab"
-      ]
-    },
-    {
-      "order": 10,
-      "title": "公共工具",
-      "description": "浏览common.php和common/library,了解项目复用的工具函数和类库",
-      "nodeIds": [
-        "file:application/common.php",
-        "file:application/common/library"
-      ]
-    }
-  ]
-}

تفاوت فایلی نمایش داده نمی شود زیرا این فایل بسیار بزرگ است
+ 0 - 23611
www/new_sdk/.understand-anything/.trash-20260630091809/batches.json


+ 0 - 31
www/new_sdk/.understand-anything/.trash-20260630091809/fingerprint-input.json

@@ -1,31 +0,0 @@
-{
-  "gitCommitHash": "7d315b54fbf4a43df94cdcfca70d7507c65d9628",
-  "projectRoot": "D:\\web\\composer\\new_sdk\\new_sdk\\www\\new_sdk",
-  "sourceFilePaths": [
-    "public/index.php",
-    "application/config.php",
-    "application/route.php",
-    "application/common.php",
-    "application/tags.php",
-    "application/command.php",
-    "application/admin/common.php",
-    "application/admin/controller/Admin.php",
-    "application/api/common.php",
-    "application/api/controller/v1/Login.php",
-    "application/api/controller/v1/Pay.php",
-    "application/api/controller/v1/PayNotify.php",
-    "application/api/controller/v1/Index.php",
-    "application/service/PayService.php",
-    "application/service/GamePayService.php",
-    "application/service/CommonService.php",
-    "application/common/model/Game.php",
-    "application/common/model/Members.php",
-    "application/common/model/Pay.php",
-    "application/common/model/Channel.php",
-    "application/common/model/Admin.php",
-    "application/common/controller/Base.php",
-    "application/command/KafkaConsumer.php",
-    "composer.json",
-    "README.md"
-  ]
-}

+ 0 - 44
www/new_sdk/.understand-anything/.trash-20260630091809/review.json

@@ -1,44 +0,0 @@
-{
-  "issues": [
-    "Edge[24] target 'file:application/common/model/Setting.php' not found"
-  ],
-  "warnings": [
-    "Node 'document:README.md' has no edges (orphan)",
-    "Node 'config:composer.json' has no edges (orphan)",
-    "Node 'file:application/tags.php' has no edges (orphan)",
-    "Node 'file:application/command.php' has no edges (orphan)",
-    "Node 'file:application/admin/common.php' has no edges (orphan)",
-    "Node 'file:application/api/common.php' has no edges (orphan)",
-    "Node 'file:application/api/controller/v1/Index.php' has no edges (orphan)",
-    "Node 'file:application/service/CommonService.php' has no edges (orphan)",
-    "Node 'file:application/guildapi/controller' has no edges (orphan)",
-    "Node 'file:extend/LdzfPay' has no edges (orphan)",
-    "Node 'file:extend/Obs' has no edges (orphan)",
-    "Node 'file:public/static' has no edges (orphan)",
-    "Node 'file:application/admin/view' has no edges (orphan)",
-    "Node 'file:public/constants.php' has no edges (orphan)",
-    "Node 'file:application/common/library' has no edges (orphan)",
-    "Node 'file:application/common/logic' has no edges (orphan)",
-    "Node 'file:application/common/validate' has no edges (orphan)"
-  ],
-  "stats": {
-    "totalNodes": 44,
-    "totalEdges": 25,
-    "totalLayers": 11,
-    "tourSteps": 10,
-    "nodeTypes": {
-      "document": 1,
-      "config": 4,
-      "file": 39
-    },
-    "edgeTypes": {
-      "loads": 2,
-      "imports": 3,
-      "inherits": 3,
-      "uses": 8,
-      "calls": 4,
-      "related": 2,
-      "configures": 3
-    }
-  }
-}

+ 0 - 63
www/new_sdk/.understand-anything/.trash-20260630091809/ua-inline-validate.cjs

@@ -1,63 +0,0 @@
-#!/usr/bin/env node
-const fs = require('fs');
-const graphPath = process.argv[2];
-const outputPath = process.argv[3];
-try {
-  const graph = JSON.parse(fs.readFileSync(graphPath, 'utf8'));
-  const issues = [], warnings = [];
-  if (!Array.isArray(graph.nodes)) { issues.push('graph.nodes is missing or not an array'); graph.nodes = []; }
-  if (!Array.isArray(graph.edges)) { issues.push('graph.edges is missing or not an array'); graph.edges = []; }
-  const nodeIds = new Set();
-  const seen = new Map();
-  graph.nodes.forEach((n, i) => {
-    if (!n.id) { issues.push(`Node[${i}] missing id`); return; }
-    if (!n.type) issues.push(`Node[${i}] '${n.id}' missing type`);
-    if (!n.name) issues.push(`Node[${i}] '${n.id}' missing name`);
-    if (!n.summary) issues.push(`Node[${i}] '${n.id}' missing summary`);
-    if (!n.tags || !n.tags.length) issues.push(`Node[${i}] '${n.id}' missing tags`);
-    if (seen.has(n.id)) issues.push(`Duplicate node ID '${n.id}' at indices ${seen.get(n.id)} and ${i}`);
-    else seen.set(n.id, i);
-    nodeIds.add(n.id);
-  });
-  graph.edges.forEach((e, i) => {
-    if (!nodeIds.has(e.source)) issues.push(`Edge[${i}] source '${e.source}' not found`);
-    if (!nodeIds.has(e.target)) issues.push(`Edge[${i}] target '${e.target}' not found`);
-  });
-  const fileLevelTypes = new Set(['file', 'config', 'document', 'service', 'pipeline', 'table', 'schema', 'resource', 'endpoint']);
-  const fileNodes = graph.nodes.filter(n => fileLevelTypes.has(n.type)).map(n => n.id);
-  const assigned = new Map();
-  if (!Array.isArray(graph.layers)) { if (graph.layers) warnings.push('graph.layers is not an array'); graph.layers = []; }
-  if (!Array.isArray(graph.tour)) { if (graph.tour) warnings.push('graph.tour is not an array'); graph.tour = []; }
-  graph.layers.forEach(layer => {
-    (layer.nodeIds || []).forEach(id => {
-      if (!nodeIds.has(id)) issues.push(`Layer '${layer.id}' refs missing node '${id}'`);
-      if (assigned.has(id)) issues.push(`Node '${id}' appears in multiple layers`);
-      assigned.set(id, layer.id);
-    });
-  });
-  fileNodes.forEach(id => {
-    if (!assigned.has(id)) issues.push(`File node '${id}' not in any layer`);
-  });
-  graph.tour.forEach((step, i) => {
-    (step.nodeIds || []).forEach(id => {
-      if (!nodeIds.has(id)) issues.push(`Tour step[${i}] refs missing node '${id}'`);
-    });
-  });
-  const withEdges = new Set([
-    ...graph.edges.map(e => e.source),
-    ...graph.edges.map(e => e.target)
-  ]);
-  graph.nodes.forEach(n => {
-    if (!withEdges.has(n.id)) warnings.push(`Node '${n.id}' has no edges (orphan)`);
-  });
-  const stats = {
-    totalNodes: graph.nodes.length,
-    totalEdges: graph.edges.length,
-    totalLayers: graph.layers.length,
-    tourSteps: graph.tour.length,
-    nodeTypes: graph.nodes.reduce((a, n) => { a[n.type] = (a[n.type]||0)+1; return a; }, {}),
-    edgeTypes: graph.edges.reduce((a, e) => { a[e.type] = (a[e.type]||0)+1; return a; }, {})
-  };
-  fs.writeFileSync(outputPath, JSON.stringify({ issues, warnings, stats }, null, 2));
-  process.exit(0);
-} catch (err) { process.stderr.write(err.message + '\n'); process.exit(1); }

+ 0 - 980
www/new_sdk/.understand-anything/.trash-20260630093035/assembled-graph.json

@@ -1,980 +0,0 @@
-{
-  "nodes": [
-    {
-      "id": "document:README.md",
-      "type": "document",
-      "name": "README.md",
-      "filePath": "README.md",
-      "summary": "项目说明文档,描述游戏SDK平台的域名配置、环境要求和相关服务",
-      "tags": [
-        "documentation",
-        "project-overview"
-      ],
-      "complexity": "simple"
-    },
-    {
-      "id": "config:composer.json",
-      "type": "config",
-      "name": "composer.json",
-      "filePath": "composer.json",
-      "summary": "PHP依赖管理配置文件,定义ThinkPHP 5.0框架及支付、队列等依赖包",
-      "tags": [
-        "php",
-        "dependencies",
-        "composer"
-      ],
-      "complexity": "simple"
-    },
-    {
-      "id": "file:public/index.php",
-      "type": "file",
-      "name": "index.php",
-      "filePath": "public/index.php",
-      "summary": "应用入口文件,设置CORS头、定义应用路径、加载常量配置和框架引导",
-      "tags": [
-        "entry-point",
-        "php",
-        "bootstrap"
-      ],
-      "complexity": "simple"
-    },
-    {
-      "id": "config:application/config.php",
-      "type": "config",
-      "name": "config.php",
-      "filePath": "application/config.php",
-      "summary": "应用主配置文件,定义模块设置、URL路由、数据库缓存、模板引擎等核心配置",
-      "tags": [
-        "config",
-        "thinkphp",
-        "application"
-      ],
-      "complexity": "moderate"
-    },
-    {
-      "id": "file:application/route.php",
-      "type": "file",
-      "name": "route.php",
-      "filePath": "application/route.php",
-      "summary": "路由配置文件,定义域名到模块的映射(admin/api/guildapi/complex/home/mobile),配置PC站和M站路由规则",
-      "tags": [
-        "routing",
-        "thinkphp",
-        "domain-mapping"
-      ],
-      "complexity": "complex"
-    },
-    {
-      "id": "file:application/common.php",
-      "type": "file",
-      "name": "common.php",
-      "filePath": "application/common.php",
-      "summary": "公共函数库,包含随机数生成、数组排序、加密解密、HTTP请求、日期处理等通用工具函数",
-      "tags": [
-        "utility",
-        "common",
-        "helper"
-      ],
-      "complexity": "moderate"
-    },
-    {
-      "id": "file:application/tags.php",
-      "type": "file",
-      "name": "tags.php",
-      "filePath": "application/tags.php",
-      "summary": "行为扩展定义文件,配置应用初始化、路由开始、模块初始化等钩子",
-      "tags": [
-        "hooks",
-        "lifecycle",
-        "thinkphp"
-      ],
-      "complexity": "simple"
-    },
-    {
-      "id": "file:application/command.php",
-      "type": "file",
-      "name": "command.php",
-      "filePath": "application/command.php",
-      "summary": "命令行配置文件,注册自定义命令如Kafka消费者",
-      "tags": [
-        "cli",
-        "commands",
-        "kafka"
-      ],
-      "complexity": "simple"
-    },
-    {
-      "id": "file:application/admin/common.php",
-      "type": "file",
-      "name": "admin/common.php",
-      "filePath": "application/admin/common.php",
-      "summary": "后台公共函数库,包含权限检查、日志记录、数据格式化等后台专用工具函数",
-      "tags": [
-        "admin",
-        "utility",
-        "helper"
-      ],
-      "complexity": "moderate"
-    },
-    {
-      "id": "file:application/admin/controller/Admin.php",
-      "type": "file",
-      "name": "Admin.php",
-      "filePath": "application/admin/controller/Admin.php",
-      "summary": "后台公共控制器基类,实现登录验证、权限检查、WebSocket令牌管理",
-      "tags": [
-        "admin",
-        "controller",
-        "base-class",
-        "auth"
-      ],
-      "complexity": "moderate"
-    },
-    {
-      "id": "file:application/api/common.php",
-      "type": "file",
-      "name": "api/common.php",
-      "filePath": "application/api/common.php",
-      "summary": "API模块公共函数库,包含API签名验证、参数加密解密、渠道鉴权等",
-      "tags": [
-        "api",
-        "utility",
-        "auth"
-      ],
-      "complexity": "moderate"
-    },
-    {
-      "id": "file:application/api/controller/v1/Login.php",
-      "type": "file",
-      "name": "Login.php",
-      "filePath": "application/api/controller/v1/Login.php",
-      "summary": "用户登录控制器,处理账号密码登录、手机验证码登录、第三方登录等",
-      "tags": [
-        "api",
-        "login",
-        "authentication"
-      ],
-      "complexity": "moderate"
-    },
-    {
-      "id": "file:application/api/controller/v1/Pay.php",
-      "type": "file",
-      "name": "Pay.php",
-      "filePath": "application/api/controller/v1/Pay.php",
-      "summary": "支付控制器,处理游戏内充值、创建订单、调用支付渠道(支付宝/微信)",
-      "tags": [
-        "api",
-        "payment",
-        "alipay",
-        "wechat"
-      ],
-      "complexity": "complex"
-    },
-    {
-      "id": "file:application/api/controller/v1/PayNotify.php",
-      "type": "file",
-      "name": "PayNotify.php",
-      "filePath": "application/api/controller/v1/PayNotify.php",
-      "summary": "支付回调控制器,接收支付宝/微信支付结果通知,更新订单状态",
-      "tags": [
-        "api",
-        "payment",
-        "callback",
-        "webhook"
-      ],
-      "complexity": "complex"
-    },
-    {
-      "id": "file:application/api/controller/v1/Index.php",
-      "type": "file",
-      "name": "Index.php",
-      "filePath": "application/api/controller/v1/Index.php",
-      "summary": "API首页控制器,处理游戏列表、游戏详情、推广页面等",
-      "tags": [
-        "api",
-        "game",
-        "index"
-      ],
-      "complexity": "moderate"
-    },
-    {
-      "id": "file:application/service/PayService.php",
-      "type": "file",
-      "name": "PayService.php",
-      "filePath": "application/service/PayService.php",
-      "summary": "支付服务类,封装支付宝WAP支付、APP支付、扫码支付等支付方式的调用逻辑",
-      "tags": [
-        "service",
-        "payment",
-        "alipay",
-        "core"
-      ],
-      "complexity": "complex"
-    },
-    {
-      "id": "file:application/service/GamePayService.php",
-      "type": "file",
-      "name": "GamePayService.php",
-      "filePath": "application/service/GamePayService.php",
-      "summary": "游戏支付服务类,处理游戏充值订单创建、支付渠道选择、回调处理",
-      "tags": [
-        "service",
-        "payment",
-        "game"
-      ],
-      "complexity": "complex"
-    },
-    {
-      "id": "file:application/service/CommonService.php",
-      "type": "file",
-      "name": "CommonService.php",
-      "filePath": "application/service/CommonService.php",
-      "summary": "通用服务类,提供数据查询、缓存管理、配置获取等基础服务",
-      "tags": [
-        "service",
-        "common",
-        "utility"
-      ],
-      "complexity": "moderate"
-    },
-    {
-      "id": "file:application/common/model/Game.php",
-      "type": "file",
-      "name": "Game.php",
-      "filePath": "application/common/model/Game.php",
-      "summary": "游戏数据模型,定义游戏表结构和关联关系",
-      "tags": [
-        "model",
-        "game",
-        "database"
-      ],
-      "complexity": "moderate"
-    },
-    {
-      "id": "file:application/common/model/Members.php",
-      "type": "file",
-      "name": "Members.php",
-      "filePath": "application/common/model/Members.php",
-      "summary": "会员数据模型,定义用户表结构、登录状态、充值记录等关联",
-      "tags": [
-        "model",
-        "user",
-        "database"
-      ],
-      "complexity": "moderate"
-    },
-    {
-      "id": "file:application/common/model/Pay.php",
-      "type": "file",
-      "name": "Pay.php",
-      "filePath": "application/common/model/Pay.php",
-      "summary": "支付订单数据模型,定义订单表结构、支付状态、退款记录等",
-      "tags": [
-        "model",
-        "payment",
-        "database"
-      ],
-      "complexity": "moderate"
-    },
-    {
-      "id": "file:application/common/model/Channel.php",
-      "type": "file",
-      "name": "Channel.php",
-      "filePath": "application/common/model/Channel.php",
-      "summary": "渠道数据模型,定义渠道表结构、渠道配置、分成比例等",
-      "tags": [
-        "model",
-        "channel",
-        "database"
-      ],
-      "complexity": "moderate"
-    },
-    {
-      "id": "file:application/common/model/Admin.php",
-      "type": "file",
-      "name": "Admin.php",
-      "filePath": "application/common/model/Admin.php",
-      "summary": "管理员数据模型,定义后台用户表结构、角色权限关联",
-      "tags": [
-        "model",
-        "admin",
-        "database"
-      ],
-      "complexity": "moderate"
-    },
-    {
-      "id": "file:application/common/controller/Base.php",
-      "type": "file",
-      "name": "Base.php",
-      "filePath": "application/common/controller/Base.php",
-      "summary": "基础控制器类,提供跨模块的公共方法如响应输出、日志记录、异常处理",
-      "tags": [
-        "controller",
-        "base-class",
-        "common"
-      ],
-      "complexity": "moderate"
-    },
-    {
-      "id": "file:application/guildapi/controller",
-      "type": "file",
-      "name": "guildapi/controllers",
-      "filePath": "application/guildapi/controller",
-      "summary": "公会API控制器目录,处理公会后台的频道管理、数据统计、结算等接口",
-      "tags": [
-        "guild",
-        "api",
-        "controller"
-      ],
-      "complexity": "moderate"
-    },
-    {
-      "id": "file:application/complex/controller",
-      "type": "file",
-      "name": "complex/controllers",
-      "filePath": "application/complex/controller",
-      "summary": "渠道SDK对接控制器目录,处理第三方渠道的登录、支付、数据同步等",
-      "tags": [
-        "complex",
-        "channel",
-        "sdk"
-      ],
-      "complexity": "complex"
-    },
-    {
-      "id": "file:application/home/controller",
-      "type": "file",
-      "name": "home/controllers",
-      "filePath": "application/home/controller",
-      "summary": "官网控制器目录,处理PC端官网的游戏展示、用户中心、客服系统等",
-      "tags": [
-        "home",
-        "website",
-        "frontend"
-      ],
-      "complexity": "moderate"
-    },
-    {
-      "id": "file:application/mobile/controller",
-      "type": "file",
-      "name": "mobile/controllers",
-      "filePath": "application/mobile/controller",
-      "summary": "移动端控制器目录,处理H5端的游戏展示、用户中心、支付等",
-      "tags": [
-        "mobile",
-        "h5",
-        "frontend"
-      ],
-      "complexity": "moderate"
-    },
-    {
-      "id": "file:application/crontab",
-      "type": "file",
-      "name": "crontab",
-      "filePath": "application/crontab",
-      "summary": "定时任务目录,包含渠道结算、数据统计、支付超时处理等定时任务",
-      "tags": [
-        "cron",
-        "scheduled",
-        "batch"
-      ],
-      "complexity": "moderate"
-    },
-    {
-      "id": "file:application/command/KafkaConsumer.php",
-      "type": "file",
-      "name": "KafkaConsumer.php",
-      "filePath": "application/command/KafkaConsumer.php",
-      "summary": "Kafka消费者命令,异步处理消息队列中的任务",
-      "tags": [
-        "kafka",
-        "queue",
-        "async"
-      ],
-      "complexity": "moderate"
-    },
-    {
-      "id": "file:extend/alipay",
-      "type": "file",
-      "name": "alipay SDK",
-      "filePath": "extend/alipay",
-      "summary": "支付宝SDK扩展目录,包含支付宝支付接口的PHP实现",
-      "tags": [
-        "alipay",
-        "sdk",
-        "payment"
-      ],
-      "complexity": "complex"
-    },
-    {
-      "id": "file:extend/DouYinGameOpen",
-      "type": "file",
-      "name": "DouYinGameOpen",
-      "filePath": "extend/DouYinGameOpen",
-      "summary": "抖音游戏开放平台SDK,处理抖音渠道的登录和支付",
-      "tags": [
-        "douyin",
-        "sdk",
-        "channel"
-      ],
-      "complexity": "moderate"
-    },
-    {
-      "id": "file:extend/LdzfPay",
-      "type": "file",
-      "name": "LdzfPay",
-      "filePath": "extend/LdzfPay",
-      "summary": "联动支付SDK扩展,提供联动优势支付渠道的接入",
-      "tags": [
-        "ldzf",
-        "sdk",
-        "payment"
-      ],
-      "complexity": "moderate"
-    },
-    {
-      "id": "file:extend/Obs",
-      "type": "file",
-      "name": "ObsClient",
-      "filePath": "extend/Obs",
-      "summary": "华为云OBS客户端扩展,用于对象存储服务(文件上传下载)",
-      "tags": [
-        "huawei",
-        "obs",
-        "storage"
-      ],
-      "complexity": "moderate"
-    },
-    {
-      "id": "file:thinkphp",
-      "type": "file",
-      "name": "ThinkPHP Framework",
-      "filePath": "thinkphp",
-      "summary": "ThinkPHP 5.0框架核心目录,包含路由、控制器、模型、视图等核心组件",
-      "tags": [
-        "framework",
-        "thinkphp",
-        "core"
-      ],
-      "complexity": "complex"
-    },
-    {
-      "id": "file:public/static",
-      "type": "file",
-      "name": "static assets",
-      "filePath": "public/static",
-      "summary": "静态资源目录,包含CSS、JavaScript、图片、字体等前端资源",
-      "tags": [
-        "static",
-        "frontend",
-        "assets"
-      ],
-      "complexity": "simple"
-    },
-    {
-      "id": "file:application/admin/view",
-      "type": "file",
-      "name": "admin views",
-      "filePath": "application/admin/view",
-      "summary": "后台视图模板目录,包含后台管理界面的HTML模板文件",
-      "tags": [
-        "admin",
-        "view",
-        "template"
-      ],
-      "complexity": "simple"
-    },
-    {
-      "id": "config:.env_dev",
-      "type": "config",
-      "name": ".env_dev",
-      "filePath": ".env_dev",
-      "summary": "开发环境配置文件,包含数据库连接、Redis配置、第三方服务密钥等",
-      "tags": [
-        "config",
-        "env",
-        "development"
-      ],
-      "complexity": "simple"
-    },
-    {
-      "id": "config:.env_pro",
-      "type": "config",
-      "name": ".env_pro",
-      "filePath": ".env_pro",
-      "summary": "生产环境配置文件,包含生产数据库、Redis、支付密钥等敏感配置",
-      "tags": [
-        "config",
-        "env",
-        "production"
-      ],
-      "complexity": "simple"
-    },
-    {
-      "id": "file:public/constants.php",
-      "type": "file",
-      "name": "constants.php",
-      "filePath": "public/constants.php",
-      "summary": "全局常量定义文件,定义域名、路径、状态码等应用常量",
-      "tags": [
-        "constants",
-        "config",
-        "global"
-      ],
-      "complexity": "simple"
-    },
-    {
-      "id": "file:application/common/library",
-      "type": "file",
-      "name": "common/library",
-      "filePath": "application/common/library",
-      "summary": "公共类库目录,包含WebSocket、短信发送、文件处理、数据导出等工具类",
-      "tags": [
-        "library",
-        "common",
-        "utility"
-      ],
-      "complexity": "moderate"
-    },
-    {
-      "id": "file:application/common/logic",
-      "type": "file",
-      "name": "common/logic",
-      "filePath": "application/common/logic",
-      "summary": "公共业务逻辑目录,包含支付工厂、子包管理、数据同步等业务逻辑",
-      "tags": [
-        "logic",
-        "business",
-        "common"
-      ],
-      "complexity": "moderate"
-    },
-    {
-      "id": "file:application/common/validate",
-      "type": "file",
-      "name": "common/validate",
-      "filePath": "application/common/validate",
-      "summary": "公共验证器目录,定义请求参数验证规则",
-      "tags": [
-        "validate",
-        "common",
-        "input"
-      ],
-      "complexity": "simple"
-    },
-    {
-      "id": "file:application/extra",
-      "type": "file",
-      "name": "extra configs",
-      "filePath": "application/extra",
-      "summary": "扩展配置目录,包含Kafka配置、队列配置、操作日志配置等",
-      "tags": [
-        "config",
-        "extra",
-        "kafka"
-      ],
-      "complexity": "simple"
-    }
-  ],
-  "project": {
-    "name": "new_sdk",
-    "analyzedAt": "2026-06-30T09:17:43Z",
-    "languages": [
-      "php",
-      "html",
-      "javascript",
-      "css"
-    ],
-    "frameworks": [
-      "ThinkPHP"
-    ],
-    "gitCommitHash": "7d315b54fbf4a43df94cdcfca70d7507c65d9628",
-    "description": "游戏SDK平台 - 基于ThinkPHP 5.0的游戏渠道SDK对接、支付回调、公会管理后台"
-  },
-  "tour": [
-    {
-      "order": 1,
-      "title": "项目概览",
-      "description": "阅读README了解项目背景:这是一个基于ThinkPHP 5.0的游戏SDK平台,包含后台管理、API接口、公会系统、渠道SDK对接等模块",
-      "nodeIds": [
-        "document:README.md"
-      ]
-    },
-    {
-      "order": 2,
-      "title": "应用入口",
-      "description": "从public/index.php开始,了解应用如何启动:设置CORS头、加载常量配置、引入ThinkPHP框架",
-      "nodeIds": [
-        "file:public/index.php"
-      ]
-    },
-    {
-      "order": 3,
-      "title": "路由配置",
-      "description": "查看route.php理解域名路由映射:不同子域名(admin/api/www/m等)对应不同模块,实现多站点共用一套代码",
-      "nodeIds": [
-        "file:application/route.php"
-      ]
-    },
-    {
-      "order": 4,
-      "title": "配置系统",
-      "description": "了解配置层:.env文件存储环境变量,config.php读取环境配置,extra目录存放扩展配置",
-      "nodeIds": [
-        "config:.env_dev",
-        "config:application/config.php",
-        "file:application/extra"
-      ]
-    },
-    {
-      "order": 5,
-      "title": "数据模型",
-      "description": "浏览common/model目录,了解核心数据表:Game(游戏)、Members(会员)、Pay(订单)、Channel(渠道)",
-      "nodeIds": [
-        "file:application/common/model/Game.php",
-        "file:application/common/model/Members.php",
-        "file:application/common/model/Pay.php"
-      ]
-    },
-    {
-      "order": 6,
-      "title": "支付流程",
-      "description": "追踪支付核心链路:Pay控制器 → PayService → 支付宝SDK,理解订单创建和回调处理",
-      "nodeIds": [
-        "file:application/api/controller/v1/Pay.php",
-        "file:application/service/PayService.php",
-        "file:extend/alipay"
-      ]
-    },
-    {
-      "order": 7,
-      "title": "后台管理",
-      "description": "了解后台管理系统:Admin基类控制器实现权限检查,各业务控制器继承实现具体功能",
-      "nodeIds": [
-        "file:application/admin/controller/Admin.php",
-        "file:application/common/controller/Base.php"
-      ]
-    },
-    {
-      "order": 8,
-      "title": "业务模块",
-      "description": "了解多模块架构:api(游戏API)、guildapi(公会API)、complex(渠道SDK)、home(官网)、mobile(移动端)",
-      "nodeIds": [
-        "file:application/guildapi/controller",
-        "file:application/complex/controller",
-        "file:application/home/controller"
-      ]
-    },
-    {
-      "order": 9,
-      "title": "定时任务",
-      "description": "查看crontab目录,了解定时任务:渠道结算、数据统计、支付超时处理等后台批处理",
-      "nodeIds": [
-        "file:application/crontab"
-      ]
-    },
-    {
-      "order": 10,
-      "title": "公共工具",
-      "description": "浏览common.php和common/library,了解项目复用的工具函数和类库",
-      "nodeIds": [
-        "file:application/common.php",
-        "file:application/common/library"
-      ]
-    }
-  ],
-  "layers": [
-    {
-      "id": "layer:entry",
-      "name": "入口层",
-      "description": "应用入口和框架引导,包含index.php和ThinkPHP框架启动",
-      "nodeIds": [
-        "file:public/index.php",
-        "file:thinkphp",
-        "file:public/constants.php"
-      ]
-    },
-    {
-      "id": "layer:config",
-      "name": "配置层",
-      "description": "应用配置、环境变量、路由规则等配置文件",
-      "nodeIds": [
-        "config:application/config.php",
-        "config:.env_dev",
-        "config:.env_pro",
-        "file:application/route.php",
-        "file:application/tags.php",
-        "file:application/command.php",
-        "file:application/extra"
-      ]
-    },
-    {
-      "id": "layer:model",
-      "name": "数据模型层",
-      "description": "数据库表结构定义、ORM模型、数据关联关系",
-      "nodeIds": [
-        "file:application/common/model/Game.php",
-        "file:application/common/model/Members.php",
-        "file:application/common/model/Pay.php",
-        "file:application/common/model/Channel.php",
-        "file:application/common/model/Admin.php"
-      ]
-    },
-    {
-      "id": "layer:service",
-      "name": "服务层",
-      "description": "业务服务类,封装核心业务逻辑如支付、游戏、会员等",
-      "nodeIds": [
-        "file:application/service/PayService.php",
-        "file:application/service/GamePayService.php",
-        "file:application/service/CommonService.php"
-      ]
-    },
-    {
-      "id": "layer:controller",
-      "name": "控制器层",
-      "description": "HTTP请求处理,包含后台管理、API接口、官网、移动端等控制器",
-      "nodeIds": [
-        "file:application/admin/controller/Admin.php",
-        "file:application/api/controller/v1/Login.php",
-        "file:application/api/controller/v1/Pay.php",
-        "file:application/api/controller/v1/PayNotify.php",
-        "file:application/api/controller/v1/Index.php",
-        "file:application/common/controller/Base.php"
-      ]
-    },
-    {
-      "id": "layer:business",
-      "name": "业务模块层",
-      "description": "按业务领域划分的模块,包含公会API、渠道SDK、官网、移动端等",
-      "nodeIds": [
-        "file:application/guildapi/controller",
-        "file:application/complex/controller",
-        "file:application/home/controller",
-        "file:application/mobile/controller"
-      ]
-    },
-    {
-      "id": "layer:common",
-      "name": "公共层",
-      "description": "跨模块共享的工具函数、类库、业务逻辑、验证器",
-      "nodeIds": [
-        "file:application/common.php",
-        "file:application/admin/common.php",
-        "file:application/api/common.php",
-        "file:application/common/library",
-        "file:application/common/logic",
-        "file:application/common/validate"
-      ]
-    },
-    {
-      "id": "layer:extension",
-      "name": "扩展层",
-      "description": "第三方SDK扩展,包含支付宝、抖音、联动支付等支付渠道SDK",
-      "nodeIds": [
-        "file:extend/alipay",
-        "file:extend/DouYinGameOpen",
-        "file:extend/LdzfPay",
-        "file:extend/Obs"
-      ]
-    },
-    {
-      "id": "layer:task",
-      "name": "任务层",
-      "description": "定时任务和异步任务,包含渠道结算、数据统计、消息队列消费",
-      "nodeIds": [
-        "file:application/crontab",
-        "file:application/command/KafkaConsumer.php"
-      ]
-    },
-    {
-      "id": "layer:frontend",
-      "name": "前端层",
-      "description": "前端资源和视图模板,包含静态文件、后台模板、官网页面",
-      "nodeIds": [
-        "file:public/static",
-        "file:application/admin/view"
-      ]
-    },
-    {
-      "id": "layer:docs",
-      "name": "文档层",
-      "description": "项目文档和依赖配置",
-      "nodeIds": [
-        "document:README.md",
-        "config:composer.json"
-      ]
-    }
-  ],
-  "edges": [
-    {
-      "source": "file:public/index.php",
-      "target": "config:application/config.php",
-      "type": "reads_from",
-      "weight": 0.8,
-      "direction": "forward"
-    },
-    {
-      "source": "file:public/index.php",
-      "target": "file:application/route.php",
-      "type": "reads_from",
-      "weight": 0.7,
-      "direction": "forward"
-    },
-    {
-      "source": "file:public/index.php",
-      "target": "file:thinkphp",
-      "type": "imports",
-      "weight": 0.9,
-      "direction": "forward"
-    },
-    {
-      "source": "file:application/admin/controller/Admin.php",
-      "target": "file:application/common/controller/Base.php",
-      "type": "inherits",
-      "weight": 0.9,
-      "direction": "forward"
-    },
-    {
-      "source": "file:application/admin/controller/Admin.php",
-      "target": "file:application/common/model/Admin.php",
-      "type": "calls",
-      "weight": 0.7,
-      "direction": "forward"
-    },
-    {
-      "source": "file:application/api/controller/v1/Pay.php",
-      "target": "file:application/service/PayService.php",
-      "type": "calls",
-      "weight": 0.8,
-      "direction": "forward"
-    },
-    {
-      "source": "file:application/api/controller/v1/Pay.php",
-      "target": "file:application/service/GamePayService.php",
-      "type": "calls",
-      "weight": 0.8,
-      "direction": "forward"
-    },
-    {
-      "source": "file:application/service/PayService.php",
-      "target": "file:extend/alipay",
-      "type": "imports",
-      "weight": 0.8,
-      "direction": "forward"
-    },
-    {
-      "source": "file:application/api/controller/v1/PayNotify.php",
-      "target": "file:application/service/PayService.php",
-      "type": "calls",
-      "weight": 0.8,
-      "direction": "forward"
-    },
-    {
-      "source": "file:application/api/controller/v1/PayNotify.php",
-      "target": "file:application/service/GamePayService.php",
-      "type": "calls",
-      "weight": 0.8,
-      "direction": "forward"
-    },
-    {
-      "source": "file:application/service/GamePayService.php",
-      "target": "file:application/common/model/Pay.php",
-      "type": "calls",
-      "weight": 0.8,
-      "direction": "forward"
-    },
-    {
-      "source": "file:application/service/GamePayService.php",
-      "target": "file:application/common/model/Game.php",
-      "type": "calls",
-      "weight": 0.7,
-      "direction": "forward"
-    },
-    {
-      "source": "file:application/service/GamePayService.php",
-      "target": "file:application/common/model/Members.php",
-      "type": "calls",
-      "weight": 0.7,
-      "direction": "forward"
-    },
-    {
-      "source": "file:application/api/controller/v1/Login.php",
-      "target": "file:application/common/model/Members.php",
-      "type": "calls",
-      "weight": 0.8,
-      "direction": "forward"
-    },
-    {
-      "source": "file:application/common/model/Game.php",
-      "target": "file:application/common/model/Channel.php",
-      "type": "related",
-      "weight": 0.6,
-      "direction": "forward"
-    },
-    {
-      "source": "file:application/common/model/Pay.php",
-      "target": "file:application/common/model/Members.php",
-      "type": "related",
-      "weight": 0.7,
-      "direction": "forward"
-    },
-    {
-      "source": "file:application/crontab",
-      "target": "file:application/common/model/Channel.php",
-      "type": "calls",
-      "weight": 0.6,
-      "direction": "forward"
-    },
-    {
-      "source": "file:application/crontab",
-      "target": "file:application/common/model/Pay.php",
-      "type": "calls",
-      "weight": 0.6,
-      "direction": "forward"
-    },
-    {
-      "source": "file:application/command/KafkaConsumer.php",
-      "target": "file:application/extra",
-      "type": "configures",
-      "weight": 0.5,
-      "direction": "forward"
-    },
-    {
-      "source": "file:application/complex/controller",
-      "target": "file:extend/DouYinGameOpen",
-      "type": "imports",
-      "weight": 0.7,
-      "direction": "forward"
-    },
-    {
-      "source": "file:application/home/controller",
-      "target": "file:application/common/controller/Base.php",
-      "type": "inherits",
-      "weight": 0.8,
-      "direction": "forward"
-    },
-    {
-      "source": "file:application/mobile/controller",
-      "target": "file:application/common/controller/Base.php",
-      "type": "inherits",
-      "weight": 0.8,
-      "direction": "forward"
-    },
-    {
-      "source": "config:.env_dev",
-      "target": "config:application/config.php",
-      "type": "configures",
-      "weight": 0.9,
-      "direction": "forward"
-    },
-    {
-      "source": "config:.env_pro",
-      "target": "config:application/config.php",
-      "type": "configures",
-      "weight": 0.9,
-      "direction": "forward"
-    }
-  ],
-  "version": "1.0.0"
-}

+ 0 - 45
www/new_sdk/.understand-anything/.trash-20260630093035/review.json

@@ -1,45 +0,0 @@
-{
-  "approved": true,
-  "scriptCompleted": true,
-  "issues": [],
-  "warnings": [
-    "Orphan node: \"document:README.md\" has no edges",
-    "Orphan node: \"config:composer.json\" has no edges",
-    "Orphan node: \"file:application/common.php\" has no edges",
-    "Orphan node: \"file:application/tags.php\" has no edges",
-    "Orphan node: \"file:application/command.php\" has no edges",
-    "Orphan node: \"file:application/admin/common.php\" has no edges",
-    "Orphan node: \"file:application/api/common.php\" has no edges",
-    "Orphan node: \"file:application/api/controller/v1/Index.php\" has no edges",
-    "Orphan node: \"file:application/service/CommonService.php\" has no edges",
-    "Orphan node: \"file:application/guildapi/controller\" has no edges",
-    "Orphan node: \"file:extend/LdzfPay\" has no edges",
-    "Orphan node: \"file:extend/Obs\" has no edges",
-    "Orphan node: \"file:public/static\" has no edges",
-    "Orphan node: \"file:application/admin/view\" has no edges",
-    "Orphan node: \"file:public/constants.php\" has no edges",
-    "Orphan node: \"file:application/common/library\" has no edges",
-    "Orphan node: \"file:application/common/logic\" has no edges",
-    "Orphan node: \"file:application/common/validate\" has no edges",
-    "Document node \"document:README.md\" has no \"documents\" edge"
-  ],
-  "stats": {
-    "totalNodes": 44,
-    "totalEdges": 24,
-    "totalLayers": 11,
-    "tourSteps": 10,
-    "nodeTypes": {
-      "document": 1,
-      "config": 4,
-      "file": 39
-    },
-    "edgeTypes": {
-      "reads_from": 2,
-      "imports": 3,
-      "inherits": 3,
-      "calls": 11,
-      "related": 2,
-      "configures": 3
-    }
-  }
-}

تفاوت فایلی نمایش داده نمی شود زیرا این فایل بسیار بزرگ است
+ 0 - 10017
www/new_sdk/.understand-anything/.trash-20260630093035/tmp/scan-files.json


+ 0 - 242
www/new_sdk/.understand-anything/.trash-20260630093035/tmp/ua-graph-validate.js

@@ -1,242 +0,0 @@
-const fs = require('fs');
-const path = require('path');
-
-const VALID_NODE_TYPES = new Set([
-  'file','function','class','module','concept','config','document',
-  'service','table','endpoint','pipeline','schema','resource','domain','flow','step'
-]);
-
-const VALID_EDGE_TYPES = new Set([
-  'imports','exports','contains','inherits','implements','calls','subscribes',
-  'publishes','middleware','reads_from','writes_to','transforms','validates',
-  'depends_on','tested_by','configures','related','similar_to','deploys','serves',
-  'migrates','documents','provisions','routes','defines_schema','triggers',
-  'contains_flow','flow_step','cross_domain'
-]);
-
-const VALID_COMPLEXITY = new Set(['simple','moderate','complex']);
-const VALID_DIRECTION = new Set(['forward','backward','bidirectional']);
-
-const FILE_LEVEL_TYPES = new Set(['file','config','document','service','pipeline','table','schema','resource','endpoint']);
-
-const graphPath = process.argv[2];
-const outPath = process.argv[3];
-
-const issues = [];
-const warnings = [];
-
-function addIssue(msg) { issues.push(msg); }
-function addWarning(msg) { warnings.push(msg); }
-
-try {
-  const raw = fs.readFileSync(graphPath, 'utf8');
-  const graph = JSON.parse(raw);
-
-  const nodes = graph.nodes || [];
-  const edges = graph.edges || [];
-  const layers = graph.layers || [];
-  const tour = graph.tour || [];
-
-  // Build lookup sets
-  const nodeIds = new Set(nodes.map(n => n.id));
-  const nodeIdsInLayers = new Set();
-  const nodeIdsInTour = new Set();
-
-  // Stats
-  const nodeTypeCounts = {};
-  const edgeTypeCounts = {};
-  for (const n of nodes) { nodeTypeCounts[n.type] = (nodeTypeCounts[n.type] || 0) + 1; }
-  for (const e of edges) { edgeTypeCounts[e.type] = (edgeTypeCounts[e.type] || 0) + 1; }
-
-  // ========== Check 1: Schema Validation ==========
-
-  // Nodes
-  for (const n of nodes) {
-    if (!n.id || typeof n.id !== 'string' || n.id.trim() === '') addIssue(`Node missing/empty id: ${JSON.stringify(n)}`);
-    if (!n.type || !VALID_NODE_TYPES.has(n.type)) addIssue(`Node "${n.id}" has invalid type "${n.type}"`);
-    if (!n.name || typeof n.name !== 'string' || n.name.trim() === '') addIssue(`Node "${n.id}" missing/empty name`);
-    if (!n.summary || typeof n.summary !== 'string' || n.summary.trim() === '') addIssue(`Node "${n.id}" missing/empty summary`);
-    if (n.summary && n.name && n.summary.trim() === n.name.trim()) addWarning(`Node "${n.id}" summary equals name`);
-    if (!Array.isArray(n.tags) || n.tags.length === 0) addIssue(`Node "${n.id}" missing/empty tags`);
-    else {
-      for (const t of n.tags) {
-        if (typeof t !== 'string') addIssue(`Node "${n.id}" has non-string tag`);
-      }
-    }
-    if (!n.complexity || !VALID_COMPLEXITY.has(n.complexity)) addIssue(`Node "${n.id}" has invalid complexity "${n.complexity}"`);
-
-    // ID prefix check (Check 9)
-    if (n.id && n.type) {
-      const prefix = n.id.split(':')[0];
-      if (prefix !== n.type) addWarning(`Node "${n.id}" type "${n.type}" does not match ID prefix "${prefix}"`);
-    }
-  }
-
-  // Edges
-  for (let i = 0; i < edges.length; i++) {
-    const e = edges[i];
-    if (!e.source || typeof e.source !== 'string') addIssue(`Edge[${i}] missing/empty source`);
-    if (!e.target || typeof e.target !== 'string') addIssue(`Edge[${i}] missing/empty target`);
-    if (!e.type || !VALID_EDGE_TYPES.has(e.type)) addIssue(`Edge[${i}] (${e.source} -> ${e.target}) has invalid type "${e.type}"`);
-    if (!e.direction || !VALID_DIRECTION.has(e.direction)) addIssue(`Edge[${i}] (${e.source} -> ${e.target}) has invalid direction "${e.direction}"`);
-    if (typeof e.weight !== 'number' || e.weight < 0 || e.weight > 1) addIssue(`Edge[${i}] (${e.source} -> ${e.target}) has invalid weight "${e.weight}"`);
-  }
-
-  // ========== Check 2: Referential Integrity ==========
-
-  for (let i = 0; i < edges.length; i++) {
-    const e = edges[i];
-    if (e.source && !nodeIds.has(e.source)) addIssue(`Edge[${i}] source "${e.source}" references non-existent node`);
-    if (e.target && !nodeIds.has(e.target)) addIssue(`Edge[${i}] target "${e.target}" references non-existent node`);
-  }
-
-  for (const layer of layers) {
-    if (Array.isArray(layer.nodeIds)) {
-      for (const nid of layer.nodeIds) {
-        nodeIdsInLayers.add(nid);
-        if (!nodeIds.has(nid)) addIssue(`Layer "${layer.id}" nodeIds references non-existent node "${nid}"`);
-      }
-    }
-  }
-
-  for (const step of tour) {
-    if (Array.isArray(step.nodeIds)) {
-      for (const nid of step.nodeIds) {
-        nodeIdsInTour.add(nid);
-        if (!nodeIds.has(nid)) addIssue(`Tour step ${step.order} references non-existent node "${nid}"`);
-      }
-    }
-  }
-
-  // ========== Check 3: Completeness ==========
-
-  if (nodes.length < 1) addIssue('No nodes in graph');
-  if (edges.length < 1) addIssue('No edges in graph');
-  if (layers.length < 1) addIssue('No layers in graph');
-  if (tour.length < 1) addIssue('No tour steps in graph');
-
-  // ========== Check 4: Layer Coverage ==========
-
-  const fileLevelNodes = nodes.filter(n => FILE_LEVEL_TYPES.has(n.type));
-  const fileLevelNodeIds = new Set(fileLevelNodes.map(n => n.id));
-  const coveredInLayers = new Set();
-
-  for (const layer of layers) {
-    if (!Array.isArray(layer.nodeIds) || layer.nodeIds.length === 0) {
-      addIssue(`Layer "${layer.id}" has empty nodeIds`);
-    }
-    for (const nid of (layer.nodeIds || [])) {
-      if (fileLevelNodeIds.has(nid)) {
-        if (coveredInLayers.has(nid)) {
-          addIssue(`File-level node "${nid}" appears in multiple layers`);
-        } else {
-          coveredInLayers.add(nid);
-        }
-      }
-    }
-  }
-
-  for (const fnid of fileLevelNodeIds) {
-    if (!coveredInLayers.has(fnid)) {
-      addIssue(`File-level node "${fnid}" is not in any layer`);
-    }
-  }
-
-  // ========== Check 5: Uniqueness ==========
-
-  const seenIds = new Set();
-  for (const n of nodes) {
-    if (seenIds.has(n.id)) addIssue(`Duplicate node ID: "${n.id}"`);
-    seenIds.add(n.id);
-  }
-
-  // ========== Check 6: Tour Validation ==========
-
-  if (tour.length < 5 || tour.length > 15) {
-    addWarning(`Tour has ${tour.length} steps (expected 5-15)`);
-  }
-  for (let i = 0; i < tour.length; i++) {
-    const step = tour[i];
-    if (step.order !== i + 1) addWarning(`Tour step index ${i} has order ${step.order}, expected ${i + 1}`);
-    if (!Array.isArray(step.nodeIds) || step.nodeIds.length === 0) addWarning(`Tour step ${step.order} has no nodeIds`);
-  }
-
-  // ========== Check 7: Quality Checks ==========
-
-  // Build edge connectivity set
-  const connectedNodes = new Set();
-  for (const e of edges) {
-    connectedNodes.add(e.source);
-    connectedNodes.add(e.target);
-  }
-
-  for (const n of nodes) {
-    if (!connectedNodes.has(n.id)) addWarning(`Orphan node: "${n.id}" has no edges`);
-  }
-
-  for (let i = 0; i < edges.length; i++) {
-    const e = edges[i];
-    if (e.source === e.target) addWarning(`Self-referencing edge[${i}]: "${e.source}"`);
-  }
-
-  // ========== Check 8: Non-Code Node Quality ==========
-
-  // Build edge index by source and target
-  const edgesBySource = {};
-  const edgesByTarget = {};
-  for (const e of edges) {
-    if (!edgesBySource[e.source]) edgesBySource[e.source] = [];
-    edgesBySource[e.source].push(e);
-    if (!edgesByTarget[e.target]) edgesByTarget[e.target] = [];
-    edgesByTarget[e.target].push(e);
-  }
-
-  function nodeHasEdgeType(nodeId, edgeType) {
-    const outEdges = edgesBySource[nodeId] || [];
-    const inEdges = edgesByTarget[nodeId] || [];
-    return outEdges.some(e => e.type === edgeType) || inEdges.some(e => e.type === edgeType);
-  }
-
-  for (const n of nodes) {
-    const allEdges = [...(edgesBySource[n.id] || []), ...(edgesByTarget[n.id] || [])];
-    if (n.type === 'document' && !nodeHasEdgeType(n.id, 'documents')) {
-      addWarning(`Document node "${n.id}" has no "documents" edge`);
-    }
-    if (n.type === 'service' && !(nodeHasEdgeType(n.id, 'deploys') || nodeHasEdgeType(n.id, 'depends_on'))) {
-      addWarning(`Service node "${n.id}" has no "deploys" or "depends_on" edge`);
-    }
-    if (n.type === 'pipeline' && !nodeHasEdgeType(n.id, 'triggers')) {
-      addWarning(`Pipeline node "${n.id}" has no "triggers" edge`);
-    }
-    if (n.type === 'table' && !(nodeHasEdgeType(n.id, 'migrates') || nodeHasEdgeType(n.id, 'defines_schema'))) {
-      addWarning(`Table node "${n.id}" has no "migrates" or "defines_schema" edge`);
-    }
-    if (n.type === 'schema' && !nodeHasEdgeType(n.id, 'defines_schema')) {
-      addWarning(`Schema node "${n.id}" has no "defines_schema" edge`);
-    }
-  }
-
-  // ========== Output ==========
-
-  const result = {
-    scriptCompleted: true,
-    issues,
-    warnings,
-    stats: {
-      totalNodes: nodes.length,
-      totalEdges: edges.length,
-      totalLayers: layers.length,
-      tourSteps: tour.length,
-      nodeTypes: nodeTypeCounts,
-      edgeTypes: edgeTypeCounts
-    }
-  };
-
-  fs.writeFileSync(outPath, JSON.stringify(result, null, 2), 'utf8');
-  console.log(JSON.stringify(result, null, 2));
-  process.exit(0);
-
-} catch (err) {
-  console.error('Script crash:', err.message);
-  process.exit(1);
-}

+ 0 - 44
www/new_sdk/.understand-anything/.trash-20260630093035/tmp/ua-review-results.json

@@ -1,44 +0,0 @@
-{
-  "scriptCompleted": true,
-  "issues": [],
-  "warnings": [
-    "Orphan node: \"document:README.md\" has no edges",
-    "Orphan node: \"config:composer.json\" has no edges",
-    "Orphan node: \"file:application/common.php\" has no edges",
-    "Orphan node: \"file:application/tags.php\" has no edges",
-    "Orphan node: \"file:application/command.php\" has no edges",
-    "Orphan node: \"file:application/admin/common.php\" has no edges",
-    "Orphan node: \"file:application/api/common.php\" has no edges",
-    "Orphan node: \"file:application/api/controller/v1/Index.php\" has no edges",
-    "Orphan node: \"file:application/service/CommonService.php\" has no edges",
-    "Orphan node: \"file:application/guildapi/controller\" has no edges",
-    "Orphan node: \"file:extend/LdzfPay\" has no edges",
-    "Orphan node: \"file:extend/Obs\" has no edges",
-    "Orphan node: \"file:public/static\" has no edges",
-    "Orphan node: \"file:application/admin/view\" has no edges",
-    "Orphan node: \"file:public/constants.php\" has no edges",
-    "Orphan node: \"file:application/common/library\" has no edges",
-    "Orphan node: \"file:application/common/logic\" has no edges",
-    "Orphan node: \"file:application/common/validate\" has no edges",
-    "Document node \"document:README.md\" has no \"documents\" edge"
-  ],
-  "stats": {
-    "totalNodes": 44,
-    "totalEdges": 24,
-    "totalLayers": 11,
-    "tourSteps": 10,
-    "nodeTypes": {
-      "document": 1,
-      "config": 4,
-      "file": 39
-    },
-    "edgeTypes": {
-      "reads_from": 2,
-      "imports": 3,
-      "inherits": 3,
-      "calls": 11,
-      "related": 2,
-      "configures": 3
-    }
-  }
-}

+ 0 - 45
www/new_sdk/.understand-anything/.understandignore

@@ -1,45 +0,0 @@
-# .understandignore — patterns for files/dirs to exclude from analysis
-# Syntax: same as .gitignore (globs, # comments, ! negation, trailing / for dirs)
-# Lines below are suggestions — uncomment to activate.
-# Use ! prefix to force-include something excluded by defaults.
-#
-# Built-in defaults (always excluded unless negated):
-#   node_modules/, .git/, dist/, build/, obj/, *.lock, *.min.js, etc.
-#
-
-# --- From .gitignore (uncomment to exclude) ---
-
-.env
-.env_dev
-.env_pro
-runtime
-/dev.env
-/pro.env
-/test.env
-/vendor
-/md/*
-.DS_Store
-*.pem
-
-# --- Privacy / sensitive files ---
-**/*privacy*.html
-**/cert/**
-
-# --- Test file patterns (uncomment to exclude) ---
-
-# JS / TS
-# *.test.*
-# *.spec.*
-# *.snap
-# C# / .NET
-# **/*Tests.cs
-# **/*Test.cs
-# **/*Fixture.cs
-# **/*.Tests.csproj
-# Java / Kotlin
-# **/src/test/**
-# **/*Test.java
-# **/*IT.java
-# **/*Spec.kt
-# Go
-# **/*_test.go

+ 0 - 3
www/new_sdk/.understand-anything/config.json

@@ -1,3 +0,0 @@
-{
-  "outputLanguage": "zh"
-}

تفاوت فایلی نمایش داده نمی شود زیرا این فایل بسیار بزرگ است
+ 0 - 3712
www/new_sdk/.understand-anything/fingerprints.json


تفاوت فایلی نمایش داده نمی شود زیرا این فایل بسیار بزرگ است
+ 0 - 15106
www/new_sdk/.understand-anything/intermediate/scan-result.json


+ 0 - 980
www/new_sdk/.understand-anything/knowledge-graph.json

@@ -1,980 +0,0 @@
-{
-  "nodes": [
-    {
-      "id": "document:README.md",
-      "type": "document",
-      "name": "README.md",
-      "filePath": "README.md",
-      "summary": "项目说明文档,描述游戏SDK平台的域名配置、环境要求和相关服务",
-      "tags": [
-        "documentation",
-        "project-overview"
-      ],
-      "complexity": "simple"
-    },
-    {
-      "id": "config:composer.json",
-      "type": "config",
-      "name": "composer.json",
-      "filePath": "composer.json",
-      "summary": "PHP依赖管理配置文件,定义ThinkPHP 5.0框架及支付、队列等依赖包",
-      "tags": [
-        "php",
-        "dependencies",
-        "composer"
-      ],
-      "complexity": "simple"
-    },
-    {
-      "id": "file:public/index.php",
-      "type": "file",
-      "name": "index.php",
-      "filePath": "public/index.php",
-      "summary": "应用入口文件,设置CORS头、定义应用路径、加载常量配置和框架引导",
-      "tags": [
-        "entry-point",
-        "php",
-        "bootstrap"
-      ],
-      "complexity": "simple"
-    },
-    {
-      "id": "config:application/config.php",
-      "type": "config",
-      "name": "config.php",
-      "filePath": "application/config.php",
-      "summary": "应用主配置文件,定义模块设置、URL路由、数据库缓存、模板引擎等核心配置",
-      "tags": [
-        "config",
-        "thinkphp",
-        "application"
-      ],
-      "complexity": "moderate"
-    },
-    {
-      "id": "file:application/route.php",
-      "type": "file",
-      "name": "route.php",
-      "filePath": "application/route.php",
-      "summary": "路由配置文件,定义域名到模块的映射(admin/api/guildapi/complex/home/mobile),配置PC站和M站路由规则",
-      "tags": [
-        "routing",
-        "thinkphp",
-        "domain-mapping"
-      ],
-      "complexity": "complex"
-    },
-    {
-      "id": "file:application/common.php",
-      "type": "file",
-      "name": "common.php",
-      "filePath": "application/common.php",
-      "summary": "公共函数库,包含随机数生成、数组排序、加密解密、HTTP请求、日期处理等通用工具函数",
-      "tags": [
-        "utility",
-        "common",
-        "helper"
-      ],
-      "complexity": "moderate"
-    },
-    {
-      "id": "file:application/tags.php",
-      "type": "file",
-      "name": "tags.php",
-      "filePath": "application/tags.php",
-      "summary": "行为扩展定义文件,配置应用初始化、路由开始、模块初始化等钩子",
-      "tags": [
-        "hooks",
-        "lifecycle",
-        "thinkphp"
-      ],
-      "complexity": "simple"
-    },
-    {
-      "id": "file:application/command.php",
-      "type": "file",
-      "name": "command.php",
-      "filePath": "application/command.php",
-      "summary": "命令行配置文件,注册自定义命令如Kafka消费者",
-      "tags": [
-        "cli",
-        "commands",
-        "kafka"
-      ],
-      "complexity": "simple"
-    },
-    {
-      "id": "file:application/admin/common.php",
-      "type": "file",
-      "name": "admin/common.php",
-      "filePath": "application/admin/common.php",
-      "summary": "后台公共函数库,包含权限检查、日志记录、数据格式化等后台专用工具函数",
-      "tags": [
-        "admin",
-        "utility",
-        "helper"
-      ],
-      "complexity": "moderate"
-    },
-    {
-      "id": "file:application/admin/controller/Admin.php",
-      "type": "file",
-      "name": "Admin.php",
-      "filePath": "application/admin/controller/Admin.php",
-      "summary": "后台公共控制器基类,实现登录验证、权限检查、WebSocket令牌管理",
-      "tags": [
-        "admin",
-        "controller",
-        "base-class",
-        "auth"
-      ],
-      "complexity": "moderate"
-    },
-    {
-      "id": "file:application/api/common.php",
-      "type": "file",
-      "name": "api/common.php",
-      "filePath": "application/api/common.php",
-      "summary": "API模块公共函数库,包含API签名验证、参数加密解密、渠道鉴权等",
-      "tags": [
-        "api",
-        "utility",
-        "auth"
-      ],
-      "complexity": "moderate"
-    },
-    {
-      "id": "file:application/api/controller/v1/Login.php",
-      "type": "file",
-      "name": "Login.php",
-      "filePath": "application/api/controller/v1/Login.php",
-      "summary": "用户登录控制器,处理账号密码登录、手机验证码登录、第三方登录等",
-      "tags": [
-        "api",
-        "login",
-        "authentication"
-      ],
-      "complexity": "moderate"
-    },
-    {
-      "id": "file:application/api/controller/v1/Pay.php",
-      "type": "file",
-      "name": "Pay.php",
-      "filePath": "application/api/controller/v1/Pay.php",
-      "summary": "支付控制器,处理游戏内充值、创建订单、调用支付渠道(支付宝/微信)",
-      "tags": [
-        "api",
-        "payment",
-        "alipay",
-        "wechat"
-      ],
-      "complexity": "complex"
-    },
-    {
-      "id": "file:application/api/controller/v1/PayNotify.php",
-      "type": "file",
-      "name": "PayNotify.php",
-      "filePath": "application/api/controller/v1/PayNotify.php",
-      "summary": "支付回调控制器,接收支付宝/微信支付结果通知,更新订单状态",
-      "tags": [
-        "api",
-        "payment",
-        "callback",
-        "webhook"
-      ],
-      "complexity": "complex"
-    },
-    {
-      "id": "file:application/api/controller/v1/Index.php",
-      "type": "file",
-      "name": "Index.php",
-      "filePath": "application/api/controller/v1/Index.php",
-      "summary": "API首页控制器,处理游戏列表、游戏详情、推广页面等",
-      "tags": [
-        "api",
-        "game",
-        "index"
-      ],
-      "complexity": "moderate"
-    },
-    {
-      "id": "file:application/service/PayService.php",
-      "type": "file",
-      "name": "PayService.php",
-      "filePath": "application/service/PayService.php",
-      "summary": "支付服务类,封装支付宝WAP支付、APP支付、扫码支付等支付方式的调用逻辑",
-      "tags": [
-        "service",
-        "payment",
-        "alipay",
-        "core"
-      ],
-      "complexity": "complex"
-    },
-    {
-      "id": "file:application/service/GamePayService.php",
-      "type": "file",
-      "name": "GamePayService.php",
-      "filePath": "application/service/GamePayService.php",
-      "summary": "游戏支付服务类,处理游戏充值订单创建、支付渠道选择、回调处理",
-      "tags": [
-        "service",
-        "payment",
-        "game"
-      ],
-      "complexity": "complex"
-    },
-    {
-      "id": "file:application/service/CommonService.php",
-      "type": "file",
-      "name": "CommonService.php",
-      "filePath": "application/service/CommonService.php",
-      "summary": "通用服务类,提供数据查询、缓存管理、配置获取等基础服务",
-      "tags": [
-        "service",
-        "common",
-        "utility"
-      ],
-      "complexity": "moderate"
-    },
-    {
-      "id": "file:application/common/model/Game.php",
-      "type": "file",
-      "name": "Game.php",
-      "filePath": "application/common/model/Game.php",
-      "summary": "游戏数据模型,定义游戏表结构和关联关系",
-      "tags": [
-        "model",
-        "game",
-        "database"
-      ],
-      "complexity": "moderate"
-    },
-    {
-      "id": "file:application/common/model/Members.php",
-      "type": "file",
-      "name": "Members.php",
-      "filePath": "application/common/model/Members.php",
-      "summary": "会员数据模型,定义用户表结构、登录状态、充值记录等关联",
-      "tags": [
-        "model",
-        "user",
-        "database"
-      ],
-      "complexity": "moderate"
-    },
-    {
-      "id": "file:application/common/model/Pay.php",
-      "type": "file",
-      "name": "Pay.php",
-      "filePath": "application/common/model/Pay.php",
-      "summary": "支付订单数据模型,定义订单表结构、支付状态、退款记录等",
-      "tags": [
-        "model",
-        "payment",
-        "database"
-      ],
-      "complexity": "moderate"
-    },
-    {
-      "id": "file:application/common/model/Channel.php",
-      "type": "file",
-      "name": "Channel.php",
-      "filePath": "application/common/model/Channel.php",
-      "summary": "渠道数据模型,定义渠道表结构、渠道配置、分成比例等",
-      "tags": [
-        "model",
-        "channel",
-        "database"
-      ],
-      "complexity": "moderate"
-    },
-    {
-      "id": "file:application/common/model/Admin.php",
-      "type": "file",
-      "name": "Admin.php",
-      "filePath": "application/common/model/Admin.php",
-      "summary": "管理员数据模型,定义后台用户表结构、角色权限关联",
-      "tags": [
-        "model",
-        "admin",
-        "database"
-      ],
-      "complexity": "moderate"
-    },
-    {
-      "id": "file:application/common/controller/Base.php",
-      "type": "file",
-      "name": "Base.php",
-      "filePath": "application/common/controller/Base.php",
-      "summary": "基础控制器类,提供跨模块的公共方法如响应输出、日志记录、异常处理",
-      "tags": [
-        "controller",
-        "base-class",
-        "common"
-      ],
-      "complexity": "moderate"
-    },
-    {
-      "id": "file:application/guildapi/controller",
-      "type": "file",
-      "name": "guildapi/controllers",
-      "filePath": "application/guildapi/controller",
-      "summary": "公会API控制器目录,处理公会后台的频道管理、数据统计、结算等接口",
-      "tags": [
-        "guild",
-        "api",
-        "controller"
-      ],
-      "complexity": "moderate"
-    },
-    {
-      "id": "file:application/complex/controller",
-      "type": "file",
-      "name": "complex/controllers",
-      "filePath": "application/complex/controller",
-      "summary": "渠道SDK对接控制器目录,处理第三方渠道的登录、支付、数据同步等",
-      "tags": [
-        "complex",
-        "channel",
-        "sdk"
-      ],
-      "complexity": "complex"
-    },
-    {
-      "id": "file:application/home/controller",
-      "type": "file",
-      "name": "home/controllers",
-      "filePath": "application/home/controller",
-      "summary": "官网控制器目录,处理PC端官网的游戏展示、用户中心、客服系统等",
-      "tags": [
-        "home",
-        "website",
-        "frontend"
-      ],
-      "complexity": "moderate"
-    },
-    {
-      "id": "file:application/mobile/controller",
-      "type": "file",
-      "name": "mobile/controllers",
-      "filePath": "application/mobile/controller",
-      "summary": "移动端控制器目录,处理H5端的游戏展示、用户中心、支付等",
-      "tags": [
-        "mobile",
-        "h5",
-        "frontend"
-      ],
-      "complexity": "moderate"
-    },
-    {
-      "id": "file:application/crontab",
-      "type": "file",
-      "name": "crontab",
-      "filePath": "application/crontab",
-      "summary": "定时任务目录,包含渠道结算、数据统计、支付超时处理等定时任务",
-      "tags": [
-        "cron",
-        "scheduled",
-        "batch"
-      ],
-      "complexity": "moderate"
-    },
-    {
-      "id": "file:application/command/KafkaConsumer.php",
-      "type": "file",
-      "name": "KafkaConsumer.php",
-      "filePath": "application/command/KafkaConsumer.php",
-      "summary": "Kafka消费者命令,异步处理消息队列中的任务",
-      "tags": [
-        "kafka",
-        "queue",
-        "async"
-      ],
-      "complexity": "moderate"
-    },
-    {
-      "id": "file:extend/alipay",
-      "type": "file",
-      "name": "alipay SDK",
-      "filePath": "extend/alipay",
-      "summary": "支付宝SDK扩展目录,包含支付宝支付接口的PHP实现",
-      "tags": [
-        "alipay",
-        "sdk",
-        "payment"
-      ],
-      "complexity": "complex"
-    },
-    {
-      "id": "file:extend/DouYinGameOpen",
-      "type": "file",
-      "name": "DouYinGameOpen",
-      "filePath": "extend/DouYinGameOpen",
-      "summary": "抖音游戏开放平台SDK,处理抖音渠道的登录和支付",
-      "tags": [
-        "douyin",
-        "sdk",
-        "channel"
-      ],
-      "complexity": "moderate"
-    },
-    {
-      "id": "file:extend/LdzfPay",
-      "type": "file",
-      "name": "LdzfPay",
-      "filePath": "extend/LdzfPay",
-      "summary": "联动支付SDK扩展,提供联动优势支付渠道的接入",
-      "tags": [
-        "ldzf",
-        "sdk",
-        "payment"
-      ],
-      "complexity": "moderate"
-    },
-    {
-      "id": "file:extend/Obs",
-      "type": "file",
-      "name": "ObsClient",
-      "filePath": "extend/Obs",
-      "summary": "华为云OBS客户端扩展,用于对象存储服务(文件上传下载)",
-      "tags": [
-        "huawei",
-        "obs",
-        "storage"
-      ],
-      "complexity": "moderate"
-    },
-    {
-      "id": "file:thinkphp",
-      "type": "file",
-      "name": "ThinkPHP Framework",
-      "filePath": "thinkphp",
-      "summary": "ThinkPHP 5.0框架核心目录,包含路由、控制器、模型、视图等核心组件",
-      "tags": [
-        "framework",
-        "thinkphp",
-        "core"
-      ],
-      "complexity": "complex"
-    },
-    {
-      "id": "file:public/static",
-      "type": "file",
-      "name": "static assets",
-      "filePath": "public/static",
-      "summary": "静态资源目录,包含CSS、JavaScript、图片、字体等前端资源",
-      "tags": [
-        "static",
-        "frontend",
-        "assets"
-      ],
-      "complexity": "simple"
-    },
-    {
-      "id": "file:application/admin/view",
-      "type": "file",
-      "name": "admin views",
-      "filePath": "application/admin/view",
-      "summary": "后台视图模板目录,包含后台管理界面的HTML模板文件",
-      "tags": [
-        "admin",
-        "view",
-        "template"
-      ],
-      "complexity": "simple"
-    },
-    {
-      "id": "config:.env_dev",
-      "type": "config",
-      "name": ".env_dev",
-      "filePath": ".env_dev",
-      "summary": "开发环境配置文件,包含数据库连接、Redis配置、第三方服务密钥等",
-      "tags": [
-        "config",
-        "env",
-        "development"
-      ],
-      "complexity": "simple"
-    },
-    {
-      "id": "config:.env_pro",
-      "type": "config",
-      "name": ".env_pro",
-      "filePath": ".env_pro",
-      "summary": "生产环境配置文件,包含生产数据库、Redis、支付密钥等敏感配置",
-      "tags": [
-        "config",
-        "env",
-        "production"
-      ],
-      "complexity": "simple"
-    },
-    {
-      "id": "file:public/constants.php",
-      "type": "file",
-      "name": "constants.php",
-      "filePath": "public/constants.php",
-      "summary": "全局常量定义文件,定义域名、路径、状态码等应用常量",
-      "tags": [
-        "constants",
-        "config",
-        "global"
-      ],
-      "complexity": "simple"
-    },
-    {
-      "id": "file:application/common/library",
-      "type": "file",
-      "name": "common/library",
-      "filePath": "application/common/library",
-      "summary": "公共类库目录,包含WebSocket、短信发送、文件处理、数据导出等工具类",
-      "tags": [
-        "library",
-        "common",
-        "utility"
-      ],
-      "complexity": "moderate"
-    },
-    {
-      "id": "file:application/common/logic",
-      "type": "file",
-      "name": "common/logic",
-      "filePath": "application/common/logic",
-      "summary": "公共业务逻辑目录,包含支付工厂、子包管理、数据同步等业务逻辑",
-      "tags": [
-        "logic",
-        "business",
-        "common"
-      ],
-      "complexity": "moderate"
-    },
-    {
-      "id": "file:application/common/validate",
-      "type": "file",
-      "name": "common/validate",
-      "filePath": "application/common/validate",
-      "summary": "公共验证器目录,定义请求参数验证规则",
-      "tags": [
-        "validate",
-        "common",
-        "input"
-      ],
-      "complexity": "simple"
-    },
-    {
-      "id": "file:application/extra",
-      "type": "file",
-      "name": "extra configs",
-      "filePath": "application/extra",
-      "summary": "扩展配置目录,包含Kafka配置、队列配置、操作日志配置等",
-      "tags": [
-        "config",
-        "extra",
-        "kafka"
-      ],
-      "complexity": "simple"
-    }
-  ],
-  "project": {
-    "name": "new_sdk",
-    "analyzedAt": "2026-06-30T09:17:43Z",
-    "languages": [
-      "php",
-      "html",
-      "javascript",
-      "css"
-    ],
-    "frameworks": [
-      "ThinkPHP"
-    ],
-    "gitCommitHash": "7d315b54fbf4a43df94cdcfca70d7507c65d9628",
-    "description": "游戏SDK平台 - 基于ThinkPHP 5.0的游戏渠道SDK对接、支付回调、公会管理后台"
-  },
-  "tour": [
-    {
-      "order": 1,
-      "title": "项目概览",
-      "description": "阅读README了解项目背景:这是一个基于ThinkPHP 5.0的游戏SDK平台,包含后台管理、API接口、公会系统、渠道SDK对接等模块",
-      "nodeIds": [
-        "document:README.md"
-      ]
-    },
-    {
-      "order": 2,
-      "title": "应用入口",
-      "description": "从public/index.php开始,了解应用如何启动:设置CORS头、加载常量配置、引入ThinkPHP框架",
-      "nodeIds": [
-        "file:public/index.php"
-      ]
-    },
-    {
-      "order": 3,
-      "title": "路由配置",
-      "description": "查看route.php理解域名路由映射:不同子域名(admin/api/www/m等)对应不同模块,实现多站点共用一套代码",
-      "nodeIds": [
-        "file:application/route.php"
-      ]
-    },
-    {
-      "order": 4,
-      "title": "配置系统",
-      "description": "了解配置层:.env文件存储环境变量,config.php读取环境配置,extra目录存放扩展配置",
-      "nodeIds": [
-        "config:.env_dev",
-        "config:application/config.php",
-        "file:application/extra"
-      ]
-    },
-    {
-      "order": 5,
-      "title": "数据模型",
-      "description": "浏览common/model目录,了解核心数据表:Game(游戏)、Members(会员)、Pay(订单)、Channel(渠道)",
-      "nodeIds": [
-        "file:application/common/model/Game.php",
-        "file:application/common/model/Members.php",
-        "file:application/common/model/Pay.php"
-      ]
-    },
-    {
-      "order": 6,
-      "title": "支付流程",
-      "description": "追踪支付核心链路:Pay控制器 → PayService → 支付宝SDK,理解订单创建和回调处理",
-      "nodeIds": [
-        "file:application/api/controller/v1/Pay.php",
-        "file:application/service/PayService.php",
-        "file:extend/alipay"
-      ]
-    },
-    {
-      "order": 7,
-      "title": "后台管理",
-      "description": "了解后台管理系统:Admin基类控制器实现权限检查,各业务控制器继承实现具体功能",
-      "nodeIds": [
-        "file:application/admin/controller/Admin.php",
-        "file:application/common/controller/Base.php"
-      ]
-    },
-    {
-      "order": 8,
-      "title": "业务模块",
-      "description": "了解多模块架构:api(游戏API)、guildapi(公会API)、complex(渠道SDK)、home(官网)、mobile(移动端)",
-      "nodeIds": [
-        "file:application/guildapi/controller",
-        "file:application/complex/controller",
-        "file:application/home/controller"
-      ]
-    },
-    {
-      "order": 9,
-      "title": "定时任务",
-      "description": "查看crontab目录,了解定时任务:渠道结算、数据统计、支付超时处理等后台批处理",
-      "nodeIds": [
-        "file:application/crontab"
-      ]
-    },
-    {
-      "order": 10,
-      "title": "公共工具",
-      "description": "浏览common.php和common/library,了解项目复用的工具函数和类库",
-      "nodeIds": [
-        "file:application/common.php",
-        "file:application/common/library"
-      ]
-    }
-  ],
-  "layers": [
-    {
-      "id": "layer:entry",
-      "name": "入口层",
-      "description": "应用入口和框架引导,包含index.php和ThinkPHP框架启动",
-      "nodeIds": [
-        "file:public/index.php",
-        "file:thinkphp",
-        "file:public/constants.php"
-      ]
-    },
-    {
-      "id": "layer:config",
-      "name": "配置层",
-      "description": "应用配置、环境变量、路由规则等配置文件",
-      "nodeIds": [
-        "config:application/config.php",
-        "config:.env_dev",
-        "config:.env_pro",
-        "file:application/route.php",
-        "file:application/tags.php",
-        "file:application/command.php",
-        "file:application/extra"
-      ]
-    },
-    {
-      "id": "layer:model",
-      "name": "数据模型层",
-      "description": "数据库表结构定义、ORM模型、数据关联关系",
-      "nodeIds": [
-        "file:application/common/model/Game.php",
-        "file:application/common/model/Members.php",
-        "file:application/common/model/Pay.php",
-        "file:application/common/model/Channel.php",
-        "file:application/common/model/Admin.php"
-      ]
-    },
-    {
-      "id": "layer:service",
-      "name": "服务层",
-      "description": "业务服务类,封装核心业务逻辑如支付、游戏、会员等",
-      "nodeIds": [
-        "file:application/service/PayService.php",
-        "file:application/service/GamePayService.php",
-        "file:application/service/CommonService.php"
-      ]
-    },
-    {
-      "id": "layer:controller",
-      "name": "控制器层",
-      "description": "HTTP请求处理,包含后台管理、API接口、官网、移动端等控制器",
-      "nodeIds": [
-        "file:application/admin/controller/Admin.php",
-        "file:application/api/controller/v1/Login.php",
-        "file:application/api/controller/v1/Pay.php",
-        "file:application/api/controller/v1/PayNotify.php",
-        "file:application/api/controller/v1/Index.php",
-        "file:application/common/controller/Base.php"
-      ]
-    },
-    {
-      "id": "layer:business",
-      "name": "业务模块层",
-      "description": "按业务领域划分的模块,包含公会API、渠道SDK、官网、移动端等",
-      "nodeIds": [
-        "file:application/guildapi/controller",
-        "file:application/complex/controller",
-        "file:application/home/controller",
-        "file:application/mobile/controller"
-      ]
-    },
-    {
-      "id": "layer:common",
-      "name": "公共层",
-      "description": "跨模块共享的工具函数、类库、业务逻辑、验证器",
-      "nodeIds": [
-        "file:application/common.php",
-        "file:application/admin/common.php",
-        "file:application/api/common.php",
-        "file:application/common/library",
-        "file:application/common/logic",
-        "file:application/common/validate"
-      ]
-    },
-    {
-      "id": "layer:extension",
-      "name": "扩展层",
-      "description": "第三方SDK扩展,包含支付宝、抖音、联动支付等支付渠道SDK",
-      "nodeIds": [
-        "file:extend/alipay",
-        "file:extend/DouYinGameOpen",
-        "file:extend/LdzfPay",
-        "file:extend/Obs"
-      ]
-    },
-    {
-      "id": "layer:task",
-      "name": "任务层",
-      "description": "定时任务和异步任务,包含渠道结算、数据统计、消息队列消费",
-      "nodeIds": [
-        "file:application/crontab",
-        "file:application/command/KafkaConsumer.php"
-      ]
-    },
-    {
-      "id": "layer:frontend",
-      "name": "前端层",
-      "description": "前端资源和视图模板,包含静态文件、后台模板、官网页面",
-      "nodeIds": [
-        "file:public/static",
-        "file:application/admin/view"
-      ]
-    },
-    {
-      "id": "layer:docs",
-      "name": "文档层",
-      "description": "项目文档和依赖配置",
-      "nodeIds": [
-        "document:README.md",
-        "config:composer.json"
-      ]
-    }
-  ],
-  "edges": [
-    {
-      "source": "file:public/index.php",
-      "target": "config:application/config.php",
-      "type": "reads_from",
-      "weight": 0.8,
-      "direction": "forward"
-    },
-    {
-      "source": "file:public/index.php",
-      "target": "file:application/route.php",
-      "type": "reads_from",
-      "weight": 0.7,
-      "direction": "forward"
-    },
-    {
-      "source": "file:public/index.php",
-      "target": "file:thinkphp",
-      "type": "imports",
-      "weight": 0.9,
-      "direction": "forward"
-    },
-    {
-      "source": "file:application/admin/controller/Admin.php",
-      "target": "file:application/common/controller/Base.php",
-      "type": "inherits",
-      "weight": 0.9,
-      "direction": "forward"
-    },
-    {
-      "source": "file:application/admin/controller/Admin.php",
-      "target": "file:application/common/model/Admin.php",
-      "type": "calls",
-      "weight": 0.7,
-      "direction": "forward"
-    },
-    {
-      "source": "file:application/api/controller/v1/Pay.php",
-      "target": "file:application/service/PayService.php",
-      "type": "calls",
-      "weight": 0.8,
-      "direction": "forward"
-    },
-    {
-      "source": "file:application/api/controller/v1/Pay.php",
-      "target": "file:application/service/GamePayService.php",
-      "type": "calls",
-      "weight": 0.8,
-      "direction": "forward"
-    },
-    {
-      "source": "file:application/service/PayService.php",
-      "target": "file:extend/alipay",
-      "type": "imports",
-      "weight": 0.8,
-      "direction": "forward"
-    },
-    {
-      "source": "file:application/api/controller/v1/PayNotify.php",
-      "target": "file:application/service/PayService.php",
-      "type": "calls",
-      "weight": 0.8,
-      "direction": "forward"
-    },
-    {
-      "source": "file:application/api/controller/v1/PayNotify.php",
-      "target": "file:application/service/GamePayService.php",
-      "type": "calls",
-      "weight": 0.8,
-      "direction": "forward"
-    },
-    {
-      "source": "file:application/service/GamePayService.php",
-      "target": "file:application/common/model/Pay.php",
-      "type": "calls",
-      "weight": 0.8,
-      "direction": "forward"
-    },
-    {
-      "source": "file:application/service/GamePayService.php",
-      "target": "file:application/common/model/Game.php",
-      "type": "calls",
-      "weight": 0.7,
-      "direction": "forward"
-    },
-    {
-      "source": "file:application/service/GamePayService.php",
-      "target": "file:application/common/model/Members.php",
-      "type": "calls",
-      "weight": 0.7,
-      "direction": "forward"
-    },
-    {
-      "source": "file:application/api/controller/v1/Login.php",
-      "target": "file:application/common/model/Members.php",
-      "type": "calls",
-      "weight": 0.8,
-      "direction": "forward"
-    },
-    {
-      "source": "file:application/common/model/Game.php",
-      "target": "file:application/common/model/Channel.php",
-      "type": "related",
-      "weight": 0.6,
-      "direction": "forward"
-    },
-    {
-      "source": "file:application/common/model/Pay.php",
-      "target": "file:application/common/model/Members.php",
-      "type": "related",
-      "weight": 0.7,
-      "direction": "forward"
-    },
-    {
-      "source": "file:application/crontab",
-      "target": "file:application/common/model/Channel.php",
-      "type": "calls",
-      "weight": 0.6,
-      "direction": "forward"
-    },
-    {
-      "source": "file:application/crontab",
-      "target": "file:application/common/model/Pay.php",
-      "type": "calls",
-      "weight": 0.6,
-      "direction": "forward"
-    },
-    {
-      "source": "file:application/command/KafkaConsumer.php",
-      "target": "file:application/extra",
-      "type": "configures",
-      "weight": 0.5,
-      "direction": "forward"
-    },
-    {
-      "source": "file:application/complex/controller",
-      "target": "file:extend/DouYinGameOpen",
-      "type": "imports",
-      "weight": 0.7,
-      "direction": "forward"
-    },
-    {
-      "source": "file:application/home/controller",
-      "target": "file:application/common/controller/Base.php",
-      "type": "inherits",
-      "weight": 0.8,
-      "direction": "forward"
-    },
-    {
-      "source": "file:application/mobile/controller",
-      "target": "file:application/common/controller/Base.php",
-      "type": "inherits",
-      "weight": 0.8,
-      "direction": "forward"
-    },
-    {
-      "source": "config:.env_dev",
-      "target": "config:application/config.php",
-      "type": "configures",
-      "weight": 0.9,
-      "direction": "forward"
-    },
-    {
-      "source": "config:.env_pro",
-      "target": "config:application/config.php",
-      "type": "configures",
-      "weight": 0.9,
-      "direction": "forward"
-    }
-  ],
-  "version": "1.0.0"
-}

+ 0 - 6
www/new_sdk/.understand-anything/meta.json

@@ -1,6 +0,0 @@
-{
-  "lastAnalyzedAt": "2026-06-30T09:30:30Z",
-  "version": "1.0.0",
-  "gitCommitHash": "7d315b54fbf4a43df94cdcfca70d7507c65d9628",
-  "analyzedFiles": 2508
-}