Files
memind/docs/goose-v149-local-phase0-manifest.md
T
john 716ef407fe feat(goose): add local v1.49 canary routing, smoke gates, and migration docs
Wire Portal and TKMind proxy to loopback Goose v1.49 via canary env blocks,
with verification scripts, Phase 2/3 evidence baselines, and rollback runbooks
so local upgrade stays isolated from stable 1.41 and production.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-08 21:10:20 +08:00

3.2 KiB
Raw Blame History

Goose v1.49 本地升级 Phase 0 基线

范围:仅本机 loopback,禁止连接 103/105 或生产库。 决策表:TKMIND_V1_49_MIGRATION.md

Stable 基线(103 生产,只读对照)

goosed 版本 goose-server 1.41.0
二进制 tkmind_go-native/releases/goosed-20260729-v141-m1
源码分支 upgrade/goose-1.47TKMind 补丁)
端口 1800618014native launchd × 9
Session PG memind_sessions @ 127.0.0.1:5432103
记录时间 2026-09-08

v1.49 候选(本地隔离)

worktree /Users/john/Project/tkmind_go-v149
分支 upgrade/v1.49-tkmind
upstream tag v1.49.0
端口 18049
启动命令 goose serve --tlsv1.49 已移除 goosed/goose-server,改为 ACP HTTP/WS
Session PG goose_sessions_v149_dev @ 127.0.0.1:5432
XDG 隔离 /tmp/goose-v149-runtime/{config,data,state,cache}
Portal 目标 TKMIND_API_TARGET_V149=https://127.0.0.1:18049(独立 H5 进程时使用)

Memory 本地策略(Phase 1 初始)

MEMORY_BACKEND=legacy
MEMORY_VECTOR_ENABLED=0
MEMORY_AGENT_INJECTION_MODE=off
MEMORY_LIFECYCLE_ENABLED=0
MEMORY_CANDIDATE_ENABLED=0

upstream / v1.49 goosed 不得写入 MySQL 业务记忆;只走现有 Portal conversation-memory owner。

Phase 0 检查项

  • 记录 stable 1.41 基线
  • 拉取 upstream v1.49.0 tag
  • 创建 upgrade/v1.49-tkmind worktree
  • 创建隔离 PG 库 goose_sessions_v149_dev
  • 编译 v1.49 goosed 并通过 GET /statusgoose 1.49.0 @ :18049ok
  • 移植 legacy REST/agent/start/sessions/sessions/{id}/events|reply|cancel 等,见 tkmind_compat
  • 导出 Memory manifestnode scripts/export-goose-v149-memory-manifest.mjsdocs/baselines/goose-v149-memory-latest.json
  • 保存 runtime 基线样本(node scripts/capture-goose-v149-baseline.mjsdocs/baselines/
  • Canary 开关与一键回滚(scripts/switch-goose-v149-canary.sh,见 goose-v149-canary-runbook.md

Phase 1 验证

node scripts/run-goosed-v149-phase2.mjs          # Phase 2 聚合(cost + drift + phase1
node scripts/check-goosed-v149-cost-smoke.mjs    # Finish token_state / billing
node scripts/compare-goose-v149-memory-manifest.mjs
bash scripts/switch-goose-v149-canary.sh on all  # 全量 canary 后重启 pnpm dev
bash scripts/ensure-goose-v149-vendor.sh   # 离线 vendorGitHub 不可用时)
bash scripts/build-goosed-v149-local.sh    # 编译 goose CLI(首次较久)
bash scripts/ensure-goose-v149-local-db.sh
bash scripts/run-goosed-v149-local.sh      # goose serve @ 18049
curl -sk https://127.0.0.1:18049/status

v1.49 已通过 crates/goose/src/acp/tkmind/ 重移植 legacy REST;聚合验证:node scripts/check-goosed-v149-all.mjs

禁止项

  • 不得使用生产 DATABASE_URLGOOSE_SESSION_DB_URL(含 RDS / 103 / 105 地址)
  • 不得修改 103 launchd、105 nginx、Portal :8081
  • 不得在本阶段删除 1.41 定制或 :18036 DeepSeek 代理