检查本机测试脚本为何不能通过 launchctl unsetenv TAGLAUNCHER_QA_PRO_STATE、退出并重新打开 TagLauncher 来去除会员状态、回到免费态。
CODE_GOVERNANCE.md、CODEGRAPH.md 和相关调试 / QA / 代码治理规则。/Applications/TagLauncher.app 为 8.2.8,build 20260630.0128,与当前 HEAD/tag 对应。launchctl getenv TAGLAUNCHER_QA_PRO_STATE 已为空,但运行中的 TagLauncher 旧进程仍携带 TAGLAUNCHER_QA_PRO_STATE=pro。TAGLAUNCHER_QA_PRO_STATE 支持 free|pro|legacyPro;unset 只表示恢复真实权益状态,不等于强制免费。launchctl setenv TAGLAUNCHER_QA_PRO_STATE free 启动新进程。open 前真正退出,导致 open 复用了仍携带 TAGLAUNCHER_QA_PRO_STATE=pro 的旧进程。TAGLAUNCHER_QA_PRO_STATE=free;unsetenv 只适合恢复 StoreKit / legacy / cache 推导出的真实权益状态。.codex-sessionhistory/2026-06-30-Pro状态重置.md。/Applications/TagLauncher.app 新进程已重新启动。TAGLAUNCHER_QA_PRO_STATE=free。Scripts/reset_pro_state_for_qa.sh free|pro|legacyPro|real,避免手写 quit/open 时再次复用旧进程。