Skip to content

save gate 檢查的是 writeData 的 scratch 序列化,不是 overlay 模式實際存出的檔案——chart/header rels 的孤兒對 gate 不可見(follow-up finding from #199 verify) #220

Description

@kiki830621

Problem

imageConsistencySaveRefusalDocxWriter.writeData(document) 的輸出跑 PackageInspector,而 writeData 永遠是 scratch 模式(只輸出 typed model 管得到的 parts);真正的 save_documentpersistDocumentToDiskDocxWriter.write(_:to:) 的 overlay 模式,會保留來源 archive 的額外 parts(charts、header/footer rels…)。#199 verify 的 logic lens 用同一份未編輯檔案實測:Direct Mode(讀磁碟)列出 chart part 的孤兒與 2 條 image relationship,Session Mode(writeData)一條都沒有——gate 看到的 package 與存出去的 package 不是同一份。

後果:只存在於 overlay 保留 parts 裡的孤兒(或那些 parts 裡的 body 引用)完全不進 gate 的視野;「gate 通過」對那些 parts 不代表任何事。#199list_images 已把宣稱收窄為「與 save gate 檢查的同一份位元組」;本 issue 追蹤 gate 本身該檢查什麼。

Type

bug

Expected

gate 檢查的位元組 = 即將寫出的位元組(overlay 模式輸出),或至少把「scratch 序列化未涵蓋的 parts」列進報告,讓 isConsistent 的守備範圍可被看見。

Actual

gate 只看 scratch 輸出。


Source: surfaced during /idd-verify #199 (Step 5b follow-up triage). Verify report: #218 (comment)
Refs #199, PsychQuant/macdoc#175

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions