feat(persona): 時區改為+08:00等值轉換、補機密遮蔽,並接上shared共用規範

依 todo.md 執行的規範治理專案:
- persona-lib.mjs 的 iso()/nowIso() 改為輸出 +08:00 offset(等值瞬間轉換,
  非加8小時),新增 nowDisplay()(人讀顯示格式)與 todayTaipei()(台北曆日
  日期鍵),修正 11 處原本用 UTC 字串切片產生日期鍵的錯誤用法;新增
  redactSecrets() 並套用到 persona-gitea.mjs 的 Gitea 錯誤路徑,避免機密
  外洩。
- 新增一次性遷移腳本 scripts/migrate-tz.mjs(備份/dry-run/冪等/衝突偵測
  中止),供之後有真實人格資料需要轉換時使用。
- persona 13 個 skill 與 AGENTS.md 接上 /jsc-shared 共用規範(spec-output、
  spec-script-path、spec-subagent、spec-gitea、spec-git-safety、
  spec-skill-invocation 等),不再各自重抄,且完全未變動人格行為本身的規範
  (情緒模型、記憶衰減、劇場模式、鎖與隔離機制等逐字保留)。
- selftest 全數通過(788/788,含本次新增的時區邊界/冪等性測試)。

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
2026-08-11 06:06:00 +00:00
co-authored by Claude Sonnet 5
parent 5fb2a43189
commit ac2045e52f
25 changed files with 927 additions and 181 deletions
+6 -2
View File
@@ -9,6 +9,12 @@ description: 查看與管理人格的載入狀態:列出所有人格、誰被
---
## 共用規範(必要前置)
先載入 `/jsc-shared:spec-preflight` 並依其流程處理;載入不到即代表 shared plugin 未安裝,
依該 spec 詢問使用者是否安裝 `https://gitea.jsc.idv.tw/plugins/shared.git`,不安裝則中斷本 skill。
本 skill 需要的規範:spec-output、spec-execution、spec-time-log、spec-script-path
## 鎖的規則(設計上的硬約束)
1. **一個人格同時只能被一個程序 exclusive 載入**(鎖 = `state/lock.json`,以 `session_id` 為主鍵)。
@@ -86,5 +92,3 @@ node "${CLAUDE_PLUGIN_ROOT}/scripts/persona.mjs" default --clear --session <PERS
- 🔓 `shen` Shen 平靜 50/信任 38|長期記憶 8
- ⚠ `nox` 死鎖可接手(最後心跳 42 分鐘前)
```
所有面向使用者的輸出使用**繁體中文(台灣用語)**、UTF-8 無亂碼。