Files
pit-router/CHANGELOG.md

5.1 KiB

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.


[Unreleased]


[0.3.0] - 2026-03-14

Added

🏗️ 项目结构

  • Flask 应用工厂 - app/__init__.py 模块化应用初始化
  • 配置管理 - app/config.py 支持开发/生产/测试环境
  • 扩展初始化 - app/extensions.py 统一管理 Flask 扩展

📦 数据模型实现

  • User 模型 - 用户模型,支持 bcrypt 密码哈希
  • Session 模型 - 会话模型,支持多 Agent 协作
  • Agent 模型 - Agent 模型,支持优先级和权重调度
  • Gateway 模型 - Gateway 模型,支持 Token 哈希存储
  • Message 模型 - 消息模型,支持 ACK 状态追踪
  • Connection 模型 - 连接模型,追踪 WebSocket 连接

🔌 HTTP API 实现

  • 认证 API - 注册、登录、Token 刷新、用户信息
  • 会话 API - 创建、查询、关闭会话
  • Agent API - 列表、详情、状态、配置更新、心跳上报
  • Gateway API - 注册、注销、状态查询、心跳上报
  • 消息 API - 发送、获取、确认、已读标记
  • 统计 API - 系统、会话、消息、Agent 统计

🔌 WebSocket 实现

  • 认证流程 - connectauthauthenticated
  • 心跳机制 - ping / pong 事件
  • 会话管理 - 创建、加入会话
  • 消息路由 - 发送消息、消息确认
  • 连接管理器 - 管理用户和 Agent 的 Socket 连接

📄 配置文件

  • requirements.txt - Python 依赖列表
  • requirements-dev.txt - 开发依赖
  • .env.example - 环境变量模板
  • docker-compose.yaml - Docker 编排配置
  • run.py - 启动入口

Changed

  • 开发计划进度 - Phase 1 核心功能已完成

[0.2.0] - 2026-03-14

Changed

🔴 数据模型修复

  • 新增 Message 模型 - 支持消息持久化,包含 statusack_statusretry_count 等字段
  • 新增 Connection 模型 - 追踪 WebSocket 连接状态,包含 socket_idip_addressuser_agent
  • Session 模型扩展 - 添加 user_socket_idparticipating_agent_idsunread_count 字段
  • Agent 模型扩展 - 添加 socket_idconnection_limitcurrent_sessions 字段
  • Gateway 模型扩展 - 添加 token_hashallowed_ipsheartbeat_interval 字段

🟡 WebSocket 协议完善

  • 新增认证流程 - connectauthauthenticated / auth_error
  • 新增心跳事件 - ping / pong / heartbeat_timeout
  • 新增消息确认 - message.ack / message.acked / message.read
  • 新增会话事件 - session.leave / session.left / session.closed / session.assigned
  • 新增输入状态 - typing 事件
  • 明确消息格式 - 与 PIT Channel 插件兼容的 JSON-RPC 风格格式

🟢 API 补充

  • 新增消息 API - POST /api/messagesGET /api/messages/:idPUT /api/messages/:id/ack
  • 新增统计 API - GET /api/statsGET /api/stats/sessionsGET /api/stats/messages
  • 新增心跳接口 - POST /api/agents/:id/heartbeatPOST /api/gateways/:id/heartbeat
  • 新增会话操作 - GET /api/sessions/:id/participantsPOST /api/sessions/:id/transfer
  • 修改会话关闭 - DELETE /api/sessions/:id 改为 PUT /api/sessions/:id/close

🔵 架构优化

  • 数据库更换 - SQLite → PostgreSQL (生产环境)
  • Agent 调度策略 - 定义 5 种调度算法:轮询、加权轮询、最少连接、最快响应、能力匹配
  • 消息可靠性机制 - ACK 确认流程、重试机制、持久化策略
  • 安全增强 - WebSocket 认证、IP 白名单、Token 哈希存储

🟣 部署配置完善

  • Docker Compose - 添加健康检查、资源限制、Nginx 反向代理
  • 新增服务 - PostgreSQL、Nginx
  • SSL 支持 - Nginx HTTPS/WSS 配置

📝 文档更新

  • 完善技术栈说明 - 添加 PostgreSQL
  • 完善项目结构 - 新增 messages.pyconnection.pystats.py
  • 完善开发计划 - 调整为 4 个阶段,总计 9-12 天
  • 新增对接说明 - 与 PIT Channel 插件的协议兼容性

[0.1.0] - 2026-03-14

Added

  • 项目初始化 - 创建 pit-router 项目
  • 基础架构设计 - 三层架构:接入层、业务层、数据层
  • 技术栈选型 - Python 3.12 + Flask 3.0 + Flask-SocketIO 5.3
  • 数据模型设计 - User、Session、Agent、Gateway 四个核心模型
  • HTTP API 设计 - 认证、会话、Agent、Gateway 四组 API
  • WebSocket 协议 - 基础事件定义
  • Docker 部署 - docker-compose.yaml 配置
  • 安全设计 - JWT 认证、CORS、Rate Limit

版本说明

版本 状态 说明
0.1.0 初始版本 基础架构设计
0.2.0 设计完善 修复技术方案问题,完善架构设计
1.0.0 待发布 完整功能实现

维护者: 小白 🐶