v0.1.0-alpha.112
Pre-releaseWindows 預設下載 AI-Sister-Setup.exe。這是 current-user 安裝包,內嵌 WebView2
offline installer 與同版 sister.exe,設計為安裝時不需連網;代價是安裝包顯著變大,
exact 大小以該 tag 的 asset 為準。正式 artifact 的斷網安裝仍待實測。Release 也保留
sister.exe 與
sister-desktop.exe,只想跑 CLI、
免安裝使用或診斷 installer 問題時,請把兩個檔放在同一個資料夾。
目前 installer 沒有 code signing,也沒有內建自動 updater。升級是使用者手動下載新版
AI-Sister-Setup.exe,先自行結束 desktop 並停止 recorder,再重新執行;安裝檢查開始時
已活著的任一行程會讓這次操作拒絕,不會被自訂 hook 強制關閉。alpha.106 尚有一個窄
競態:desktop 若在 hook 放行後才啟動,Tauri stock silent check 仍可能強制結束它;
recorder 若此時才啟動則不會被 stock 重查,安裝/移除可能只做一部分。
sister.exe doctor # 先看這個:她在這台機器上做得到什麼
sister.exe consent --grant local-recording --grant frame-storage
# 沒簽第一張,下一行會直接拒絕
sister.exe record --duration 60 # 錄一分鐘(省略 --duration 就錄到 Ctrl-C)
sister.exe stats # 記了多少
sister.exe query 電話 # 查,每筆都附出處
sister.exe prune --dry-run # 保留期現在會刪掉什麼
第二行不是形式。沒簽第一張同意書,record 不會開始錄——不是印個
警告然後照錄。少簽第三張(frame-storage)她照樣記,但只記螢幕上的
字、一張截圖都不寫。sister.exe consent 不帶參數就是看現在簽了哪幾張。
使用者自己開桌面姊妹(sister-desktop.exe)的話,它會把那一頁跳出來。
alpha.107 的 Windows login mode 是窄例外:它不在登入背景啟動時自動彈同意頁。
記憶資料放在 %APPDATA%\ted-h\AI-Sister\data\,刪掉那個資料夾就等於
把記憶全部忘掉;config.toml 裡的機器設定(包括 alpha.100 的 URL 答案)不在其中。
也可以用 --data-dir .\test 錄到別的地方,測完直接刪。
alpha.111 tag 沒有公開 release 或下載資產;alpha.112 才是把 17 人圖像選角與
公開舊版到新版 installer gate 交到使用者手上的版本。
alpha.111 的同一份 commit 在一般 main Windows run 曾跑完整支升級腳本,但 tag run
多了一段 tag-only Windows 工作後,PowerShell 依賴 ambient native stdout encoding
來接 sister.exe 的 UTF-8 JSON。舊版查詢回來的電話、frame、chunk、app 與 URL 都符合,
中文視窗標題卻在進入 JSON parser 前變成 mojibake,因此 exact title assertion 正確變紅;
流程停在安裝舊版後、真正覆蓋新版之前。這不是「migration 已經失敗」的證據,也不能拿
main run 冒充 tag path 已通過。Windows job 失敗後 Release job 依 dependency gate 跳過,
遠端沒有建立 draft,更沒有發布任何 alpha.111 asset。
alpha.112 不刪中文斷言來換綠燈。升級腳本把 console input/output 與 PowerShell
$OutputEncoding 固定為無 BOM UTF-8;需要機器判讀的 native CLI stdout/stderr 另由
subprocess 分開收回,明確交給會拒絕非法位元組的 UTF-8 decoder。這讓同一份中文字串不再由
runner 當下 code page 決定,同時保留電話事實的 raw/value、frame/chunk、app、完整繁中
title 與 URL 全欄 exact compare。
設定頁直接使用已隨程式提供、manifest 逐檔 pin 住的 17 張 WebP,分成四姊妹與
13 位閨密的 native radio 圖像卡;不增加角色素材,也不在設定頁解碼 402 張 Reel layer。
卡片可用鍵盤操作,縮圖讀不到時仍保留完整名稱,不會生出 Neutral 或單字母替身。
點選只換本機預覽,並分清「尚未儲存」與設定檔目前是哪一位;只有頁尾儲存寫入成功
才嘗試通知主視窗,事件沒送出會明講重開 desktop 後生效。設定頁本身也要成功讀回,
才會把預覽稱為已存。選角過程不做 Persona GET、Azure POST、語音播放或 rig decode。
升級 baseline 仍是最後一個真的有公開安裝檔、使用者可能正在使用的 alpha.110:Setup
固定為 305,417,570 bytes、SHA-256
3e661803d1b1d867aae0281e56baeb6a165b9178069ad912dc0c8869d1521965,安裝後的舊
sister.exe 也另驗公開 bytes/hash。alpha.111 沒有 asset,所以腳本不捏造一份舊安裝檔,
也不依賴會過期的 Actions artifact;它明確只接受 alpha.110 → alpha.112 這組
last-public-to-current 路徑。這是真 old-binary → new-binary 升級,但不是數字相鄰版本。
Run value 原本不存在與 exact enabled 分兩條 lane;前者不可被自動打開,後者的 REG_SZ
與完整命令不可被清掉或改寫,無關 Run fixture 也不能動。installer 執行前後逐檔比對
install root 外的 DB、config、consent、sentinel 與 synthetic evidence;再由新版已安裝
sister.exe 解析舊版電話事實、frame/chunk/app/title 關聯、四張 consent 的原 timestamps,
以及 Persona/default-off Azure typed region/voice 的非密設定。replay 沒有截圖像素,
所以 gate 明確把 repo 內 pinned OCR PNG 接到隔離舊版資料庫的一筆 frame,升級後用
export --with-frames 搬出並重驗 hash、DB integrity 與 foreign keys。這證明的是可匯出的
synthetic evidence file association;沒有執行真人 OCR、frame_get 或 WebView2 出處 click。
正式 artifact 的圖像選角、真資料升級、Run 登入與出處點擊仍列在 Windows 人工清單。
隱私承諾與邊界見
PRIVACY.md、
THREAT_MODEL.md。
最有價值的回報是:「這條規則在我的機器上沒有生效。」
Full Changelog: v0.1.0-alpha.110...v0.1.0-alpha.112