 Rogeeandrogee
|
eb83d241fe
|
HH-547: allow cross-origin widget requests (#126)
* HH-547: allow cross-origin widget requests
* fix(HH-547): align production preflight with wildcard CORS
---------
Co-authored-by: Rogee <rogee@ipao.vip>
|
2026-08-23 20:11:04 +08:00 |
|
 Rogeeandrogee
|
fb83285617
|
HH-445: deploy production observability and runbooks (#96)
* HH-445: deploy production observability and runbooks
* fix(ops): share production database DSN
* fix(HH-445): enforce database TLS gate
* fix(HH-445): preserve production serve command
* fix(prod): require external database dependencies
* fix(prod): unify database host rejection gates
* test(prod): enforce exact database TLS runbook contract
---------
Co-authored-by: Rogee <rogee@ipao.vip>
|
2026-08-22 19:39:57 +08:00 |
|
 Rogeeandrogee
|
f719529d66
|
fix(security): harden auth and secret handling (HH-444) (#101)
* fix(security): harden auth and credential handling (HH-444)
* fix(security): address HH-444 review blockers
* fix(security): close remaining HH-444 review blockers
---------
Co-authored-by: Rogee <rogee@ipao.vip>
|
2026-08-22 15:45:06 +08:00 |
|
 Rogeeandrogee
|
798ea43c2f
|
HH-442: isolate runtime processes and harden shutdown (#90)
* HH-442: isolate runtime processes and harden shutdown
* HH-442: harden worker shutdown races
* HH-442: gate dependency shutdown on active handlers
---------
Co-authored-by: Rogee <rogee@ipao.vip>
|
2026-08-22 02:38:15 +08:00 |
|
 Rogeeandrogee
|
6d6d80dd86
|
HH-441: harden durable storage and recovery (#92)
* HH-441: harden durable storage and recovery
* HH-441: clear recovery review blockers
* HH-441: enforce offsite backup failure domain
---------
Co-authored-by: Rogee <rogee@ipao.vip>
|
2026-08-22 02:16:02 +08:00 |
|
 Rogeeandrogee
|
7a9fec33c5
|
HH-439: harden production artifact pipeline (#86)
* HH-439: harden production artifact pipeline
* fix(HH-439): address production compose review
* fix(HH-439): preserve previous JWT secrets in production
---------
Co-authored-by: Rogee <rogee@ipao.vip>
|
2026-08-21 20:20:00 +08:00 |
|
 Rogeeandrogee
|
cf263d10b4
|
HH-437: harden production auth and tenant authorization (#84)
* HH-437 harden auth and account authorization
* HH-437 reject revoked platform access
---------
Co-authored-by: Rogee <rogee@ipao.vip>
|
2026-08-21 19:13:10 +08:00 |
|
Rogee
|
92f0d51375
|
refactor: 统一 DB/Redis 配置为 DSN 模式 + 移除 Helm/K8s 部署
- DatabaseConfig: Host/Port/User/Password/Name/DBName/SSLMode → 单个 DSN 字段
- RedisConfig: Host/Port/Password/DB/URL → 单个 DSN 字段
- 环境变量: GOCHAT_DATABASE_* (7个) → GOCHAT_DATABASE_DSN, GOCHAT_REDIS_* (5个) → GOCHAT_REDIS_DSN
- validator.go: DSN URL 解析校验 (scheme + host)
- redis.go: redis.ParseURL(cfg.DSN) 直连
- 所有 docker-compose / CI / shell 脚本 / .env 同步更新
- 删除 deploy/helm/ 整个目录 (20个文件)
- CI 删除 helm-validate / deploy-staging / deploy-production 三个 job
- 文档同步更新 (README, 架构设计, PRD, 滚动升级)
|
2026-07-29 20:58:10 +08:00 |
|
Rogee
|
1c6b8c661c
|
fix: 文件上传Metadata jsonb BUG + search config + fake:ai provider + QA报告
修复:
- message_service.go: 附件Metadata零值字符串''→'{}'(PG jsonb列报错)
- config.dev.yaml/config.development.yaml: search.engine改为db
(避免依赖未运行的MeiliSearch导致搜索500)
新增:
- fake_provider.go: Captain/AI fake LLM Provider
- test-captain-llm-provider.sh: 测试脚本
- QA测试报告: 93项CDP功能点覆盖验证
文档:
- CDP_TESTING_HANDOFF.md: 进度更新(89%->92%->95%)
- 报告: 11.846~11.897 完整测试日志
|
2026-07-27 22:01:28 +08:00 |
|
rogee
|
df23caf7d9
|
feat(copilot): move provider configuration to settings
|
2026-07-12 22:27:29 +08:00 |
|
rogee
|
762de6aa3b
|
feat: migrate worker job dispatch from DB polling to Redis Streams
- worker.go: add Redis fields, XADD on Enqueue, XREADGROUP BLOCK consumer
loop, sweep compensation for delayed/failed jobs, DB-polling fallback
when rdb is nil, XGroupCreateMkStream for idempotent consumer groups
- config.go: extend WorkerConfig with stream_prefix, consumer_group,
block_timeout_s, sweep_interval_s + defaults, env bindings, reloadable
- validator.go: validate new worker Redis fields
- bootstrap.go: fix concurrency bug (NewWorkerPoolWithOptions with Redis
+ cfg.Worker.Concurrency), reorder rdb init before worker pool
- config.dev.yaml/config.prod.yaml: add worker Redis params
- worker_test.go: 6 new miniredis tests (end-to-end, fallback, sweep,
multi-consumer competition, group creation, Redis failure recovery)
- config_test.go/reloader_test.go: adapt fixtures for new fields
|
2026-07-10 12:56:32 +08:00 |
|
rogee
|
42b8b6c7f9
|
Activate Captain AI features: config, RAG routes, conversation handler
Phase 1 of AI_FEATURE_ROADMAP.md:
1. config.yaml: Add captain configuration section (llm_provider, llm_model,
llm_api_key, llm_base_url, embedding_model, embedding_dims, max_tokens,
temperature). Secrets injected via GOCHAT_CAPTAIN_LLM_API_KEY env var.
2. RAG route registration:
- bootstrap.go: instantiate RAGService + RAGHandler, add to Handlers
- router.go: register POST /captain/rag/query + /captain/rag/index/:response_id
- rag_handler.go: fix account_id param name (was "id", route uses "account_id")
3. CaptainConversationService activation:
- Remove "_ = captainConversationService" ignore in bootstrap.go
- Create CaptainConversationHandler with BuildResponse endpoint
- Register POST /captain/conversations/:conversation_id/respond route
- Fix account_id param name in handler
Verified:
- go build ./... passes
- go vet passes on all modified packages
- go test passes (llm + service packages)
- Server starts with captain config loaded
- RAG query/index routes return proper handler responses (not 404)
- Conversation respond route returns proper skip for non-pending conversations
- Existing captain routes unaffected (assistants list still works)
|
2026-07-08 15:38:08 +08:00 |
|
rogee
|
8364048053
|
ok
|
2026-07-07 17:21:41 +08:00 |
|
rogee
|
aeddedf2a3
|
Reorganize repo: backend/, deploy/, docs/ layout + AGENTS.md
Restructure the monorepo into clear top-level directories:
- backend/: Go module root (cmd, internal, pkg, configs, migrations,
docs/swagger, scripts, tests, go.mod, Makefile, .air.toml)
- deploy/: Docker (Dockerfile, docker-compose*), quickstart, fluentd
- docs/: project documentation + reports/ (moved from repo root)
- AGENTS.md: new AI coding-agent guide at repo root
Update all references to the new layout:
- Dockerfile: COPY backend/go.mod, COPY backend/ (context = repo root)
- docker-compose files: context ../.., dockerfile deploy/docker/Dockerfile,
env_file ../../.env, volume mounts ../../backend:/app
- deploy/quickstart/compose.yaml: dockerfile deploy/docker/Dockerfile
- CI: working-directory: backend for go commands, file deploy/docker/Dockerfile,
coverage path backend/coverage.out, health_check backend/scripts/
- backend/Makefile: docker target uses -f ../deploy/docker/Dockerfile ../
- README: architecture tree, quickstart, config paths updated
Move root stray scripts (rename_models.*, run_m11_tests.sh, verify_build.sh,
gorm_bool_main.go) to backend/scripts/legacy/. All moves via git mv to
preserve history. Build, vet, SQLite tests, and docker compose config verified.
|
2026-07-07 14:44:12 +08:00 |
|