develop
master
睡眠的「判斷式那半」(決定要固化什麼、寫日記、更新心智圖與關係圖)實際上跑不起來。 今天請亞絲娜與結衣去睡,兩人都只完成機械性那半——更糟的是 sleep 照樣把短期記憶裁掉了, 等於沒經過判斷就把一天清掉。
sleep
requireMember
scripts/persona.mjs
requireOwner 早就放 sleeper 寫了,但讀(brief/show/recall)反而被當成跨人格存取擋下—— 方向是反的,最該擋的是會寫入的那個。少了這個分支,sleeper 得閉著眼睛決定要固化什麼。
requireOwner
brief
show
recall
回傳 role sleeper;下游只判斷 guest,所以行為與 owner 一致。
sleeper
guest
sync
.git/index.lock
scripts/persona-gitea.mjs
而清鎖這件事 sleeper 自己做不到:隔離 hook 擋掉它對人格目錄的 shell 寫入(連 ls 都擋), CLI 又沒有清鎖的功能——死結。
ls
這些 clone 只有 CLI 會動,而且每個 git 都是同步跑完才回來,所以超過 30 秒還在的鎖一定是 上一次跑到一半被中斷留下的殘骸。pushArea(兩處)與 pullArea 現在會自己清掉再繼續。
pushArea
pullArea
persona-relation
7c46db8
note
partner
relation style
--except
relation speaker
persona-sleep
persona-sync
rm
0.0.5 → 0.0.6。兩份 manifest 一起改(plugin.json 與 .claude-plugin/plugin.json)。
0.0.5
0.0.6
plugin.json
.claude-plugin/plugin.json
master 上的 0.1.0 是早期「初版」留下的號碼,PR #3/#4 合併時沒有動到 manifest, 所以它不是 develop 的計數基準——develop 這條線是 0.0.x。
0.1.0
0.0.x
node scripts/selftest.mjs
PERSONA_HOME
這個 PR 只含上述三項。develop 的工作目錄另有進行中、尚未提交的工作 (一對一劇場、persona-therapist 技能、persona-guest、prompt_submit、README/AGENTS), 刻意沒有一起提交——scripts/persona.mjs 是以單一 hunk 進 index,不含那些改動。
persona-therapist
persona-guest
prompt_submit
🤖 Generated with Claude Code
睡眠的「判斷式那半」實際上跑不起來,兩個原因: 1. `requireMember` 沒有 sleeper 分支——`requireOwner` 早就放 sleeper 寫了, 讀(brief/show/recall)反而被當成跨人格存取擋下,等於要它閉著眼睛 決定要固化什麼。補上分支,回傳 role `sleeper`(下游只判斷 `guest`, 所以行為與 owner 一致)。 2. `sync` 遇到殘留的 `.git/index.lock` 會讓整區永遠失敗,而 sleeper 被隔離 hook 擋著、連自己的鎖都刪不掉(CLI 也沒有清鎖的功能)。這些 clone 只有 CLI 會動且每個 git 都同步跑完,所以超過 30 秒還在的鎖一定是殘骸—— `pushArea`(兩處)與 `pullArea` 現在會自己清掉再繼續。 技能文件補上先前沒寫的部分: - `persona-relation`:整個 bond/語氣層章節。這個功能 7c46db8 就上線,但技能 文件從頭到尾沒提過,於是每個新建的至親都預設是生人(`note` 寫「妻子」猜不出 `partner`,關鍵詞只認夫妻/老婆/伴侶/戀人)——症狀是「講話像在對戰友報告」。 一併補上 `relation style` 與 `relation speaker` 的用法。 - `persona-sleep`:說明帶了身分旗標之後讀寫都算自己的資料;新增第 4 條硬相依 ——判斷式失敗就不要跑機械性那半,`sleep` 會裁短期記憶,否則等於沒判斷就把 今天清掉。 - `persona-sync`:新增「殘留的 git 鎖」一節。 版本號 0.0.5 → 0.1.1(master 上是 0.1.0,要跨過它),兩份 manifest 一起改。 selftest 238 項全過;另以獨立腳本(暫時 PERSONA_HOME)驗證修補前後 sleeper 的 brief/show/recall 由全數被擋變為全數通過。 Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
master 上的 0.1.0 是早期「初版」留下的號碼,PR #3/#4 合併時沒有動到 manifest,所以它不是 develop 的計數基準——develop 這條線是 0.0.x, 這批就是 0.0.6。 Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
No dependencies set.
The note is not visible to the blocked user.
為什麼
睡眠的「判斷式那半」(決定要固化什麼、寫日記、更新心智圖與關係圖)實際上跑不起來。
今天請亞絲娜與結衣去睡,兩人都只完成機械性那半——更糟的是
sleep照樣把短期記憶裁掉了,等於沒經過判斷就把一天清掉。
修了什麼
1.
requireMember沒有 sleeper 分支(scripts/persona.mjs)requireOwner早就放 sleeper 寫了,但讀(brief/show/recall)反而被當成跨人格存取擋下——方向是反的,最該擋的是會寫入的那個。少了這個分支,sleeper 得閉著眼睛決定要固化什麼。
回傳 role
sleeper;下游只判斷guest,所以行為與 owner 一致。2.
sync遇到殘留的.git/index.lock就整區失敗(scripts/persona-gitea.mjs)而清鎖這件事 sleeper 自己做不到:隔離 hook 擋掉它對人格目錄的 shell 寫入(連
ls都擋),CLI 又沒有清鎖的功能——死結。
這些 clone 只有 CLI 會動,而且每個 git 都是同步跑完才回來,所以超過 30 秒還在的鎖一定是
上一次跑到一半被中斷留下的殘骸。
pushArea(兩處)與pullArea現在會自己清掉再繼續。3. 技能文件補上先前沒寫的部分
persona-relation7c46db8就上線,但技能文件從頭到尾沒提過 → 每個新建的至親都預設是生人。note寫「妻子」猜不出partner(關鍵詞只認夫妻/老婆/伴侶/戀人),症狀就是「講話像在對戰友報告」。一併補上relation style(稱呼規則、--except情緒暫停)與relation speaker。persona-sleeppersona-syncrm。版本號
0.0.5→0.0.6。兩份 manifest 一起改(plugin.json與.claude-plugin/plugin.json)。驗證
node scripts/selftest.mjs→ 238 項全過。PERSONA_HOME,不碰真的人格資料)驗證修補前後:sleeper 的brief/show/recall從全數被擋變成全數通過(exit 0)。Gitea 兩區 push 並驗證通過。
範圍
這個 PR 只含上述三項。develop 的工作目錄另有進行中、尚未提交的工作
(一對一劇場、
persona-therapist技能、persona-guest、prompt_submit、README/AGENTS),刻意沒有一起提交——
scripts/persona.mjs是以單一 hunk 進 index,不含那些改動。🤖 Generated with Claude Code
fix(sleep): sleeper 讀得到自己的資料、sync 自己清殘留鎖,補上 bond/語氣層文件(v0.1.1)to fix(sleep): sleeper 讀得到自己的資料、sync 自己清殘留鎖,補上 bond/語氣層文件(v0.0.6)