Skip to content

chore: split Python data platform into PsychQuant/che-transport-data #10

Description

@kiki830621

目標

把 Python 資料平台從 rush(Swift MCP 產品)分拆到獨立 repo PsychQuant/che-transport-data。兩側零 code/build 耦合(盤點確認),拆分只涉及文件與 spec 搬移。

搬移清單logger/(含 warehouse/)、weather-logger/analysis/docs/bus-eta-prediction.mddocs/offline-serving-table.mdopenspec/changes/bus-eta-logger/。新 repo 路徑維持原樣(保 blame/歷史)。

Checklist

  • Phase 0 — mini preflight(auth 修復、基線健康、pip freeze、抓 plist)
  • Phase 2 — git filter-repo 抽取(18 commits 全歷史)→ push 新 repo
  • Phase 3 — 新 repo 鷹架(README / CLAUDE.md / .gitignore / IDD config / openspec config,commit 51c275c)
  • Phase 4 — issue 轉移:rush#9 → che-transport-data#1、rush#8 → che-transport-data#2;logger/README.md 引用已更新
  • Phase 5 — rush 清理 commit 67f6e2d(git rm + CLAUDE.md pointer + .gitignore + IDD config 修 stale 名;218 tests 過)
  • Phase 6.1–6.2 — mini clone + venv 重建(freeze 檔,39 tests 過)+ 兩個 plist 入版控(1ad19db)
  • Phase 6.3 — cutover 完成:weather PID 33246(10 分內 44 parquet)、bus-eta PID 33320(三 feed 恢復、無新錯誤、中斷未達 gap 門檻)
  • Phase 6.4 — 24h 觀察(至 2026-07-03 中午)→ PAUSE C 歸檔舊鬆散副本到 ~/archive-pre-split/
  • Phase 7 — 驗證矩陣收尾、關閉本 issue

執行紀錄補充

  • bootstrap error 5:bus-eta bootout 後立即 bootstrap 回 EIO,數秒後重試即成(launchd 拆卸未完的暫時性錯誤);weather 同序列一次成功。
  • CI 既有失敗與拆分無關testcontract-tests 自 rebrand 後即紅——Actions cache 存有 che-transport-mcp 路徑時代的 PCH,runner 路徑改為 rush 後不符。已刪 stale cache(key macOS-spm-, 340MB)並重跑驗證。
  • mini-che GitHub 憑證漂移修復:che830621 原無任何憑證;org 政策停用 deploy keys(422,未改政策);依全域 CLAUDE.md 意圖將 psychquant 的 PsychQuantClaw token 管道同步(不落地),gh auth setup-git 完成。
  • NEXT-SESSION.md 已刪(待辦摺入 che-transport-data#1)。
  • 全域 ~/.claude/CLAUDE.md 無需更新(零資料平台路徑引用,實測 grep 確認)。

Rollback

  • Phase 6.3:bootout 新 job → 復原 ~/launchd-backup-presplit/ 的 plist → bootstrap(舊副本在 ~/bus-eta-logger~/weather-logger 原封不動,24h 觀察期後才歸檔)

相關

  • 已轉移:che-transport-data#1(warehouse,原 #9)、che-transport-data#2(bus-eta-logger change,原 #8,剩 7 天驗收)
  • Out of scope(記錄備查):che-mcps README/CLAUDE.md 仍有 stale che-transport-mcp 引用(rebrand 前既有)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions