Skip to content

[test] 補強文件 profile 的字型、編碼與 OPC 邊界回歸矩陣(#185 後續) #196

Description

@kiki830621

Problem

原始審查觀察:「CLI 字型中立回歸的斷言仍偏窄。」
— #185 補修重驗,獨立 Codex。

現有 CLI 產檔回歸主要比對數個已知字型字串,核心另有較完整的 provenance 測試。正式重驗指出可以用同一套合成 profile 回歸矩陣,提高 consumer 與核心對邊界資料的敏感度。這是測試強度與接受/拒絕政策的後續工作,不代表目前已證實有字型遺失、安全繞過或 Word 版面錯誤。

Type

refactor / test

Priority

P3

Expected

  • CLI 字型中立檢查改用 namespace-aware 的 rFonts/theme 軸;明確區分 factory 預設與呼叫者刻意設定的字型(例如程式碼字型),不只列舉 Calibri 等名稱。
  • 補 UTF-8/無 docDefaults、未編輯保存 UTF-16 bytes、支援與不支援編碼的接受/拒絕矩陣;保持 DTD fail-closed,不擅自擴大 charset 支援。
  • 驗證 factory provenance 全集、整份值複製與明示 setter 的既定語意;不要由 ID/相同字型值猜意圖。
  • 為 OPC Target 的 URI spelling 與同 Type 重複 relationship 建合成案例,先釐清有效/畸形輸入政策,再決定拒絕或正規化。現用 NSString.standardizingPath 的純 OPC 適用性應被測試,而不是假設已發生網路存取或資料遺失。
  • 補 BOM/encoding 宣告不一致的安全反例;目前尚無最終 decoder 的新可達繞過證據,不以推測冒稱漏洞。

Actual / Boundaries

#185 最後 CORE 已通過 1598 項(32 個既有 skips),本案不回頭否認該結果,也不執行新產品功能。現有 #194 持續追蹤 inflate 上限、權限與快照維護;本案集中在驗證矩陣,避免重複其範圍。

來源驗證

Source: surfaced during /idd-verify #185 follow-up triage (Step 5b)


Current Status

Phase: closed
Last updated: 2026-09-24 by /idd-close

Key Decisions

  • OPC Target 純詞法正規化、同 Type 重複 relationship 三處拒絕、rels 拒絕 DTD;新增 error case 屬 source-breaking,已寫入 CHANGELOG

Scope Changes

  • (none)

Blocking

  • (none)

Commits

  • PsychQuant/ooxml-swift 2b2b489、8cab863、594d9bb、5e65f62、6314055、22fbead(v3.10.0);macdoc cb9a7d4c

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

    confidence:confirmed已查核來源或可觀察的事實priority:P3非阻擋後續,另行排程refactorCode refactoring

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions