跳到內容

TypeScript 首次準入與歷史信任

TypeScript AdmissionService 在六階段 Signed Document 驗證器 (MWP-ADM-005) 之上分層首次準入和歷史信任。與語言無關的流程見本地首次準入和歷史信任運行時頁面,確切要求見本地首次準入和歷史信任條款。

公開 API 責任
AdmissionCurrentKeyResolver.resolveCurrent 同步返回完整的 Organization 範圍的 Registry 證據,表明部署斷言對於該決策是最新的。
TrustedAdmissionContext.issue 同步或非同步下發可信任記錄ID、受理即時、權威不在後才接受服務。
AdmissionLog.lookup 非同步返回{ status: "found", record }或{ status: "authoritative-absence" }。快取未命中、逾時、未經身份驗證的缺席和不確定狀態在 MWP-ADM-003 下關閉失敗。
AdmissionLog.appendOrReturnExisting 以原子方式追加候選位元組或透過經過驗證的服務身分返回並發權威獲勝者。
AuthenticatedAdmissionRecord 將 recordBytes 綁定到適配器驗證的服務,以便 MWP-ADM-009 可以驗證傳回的記錄。
AdmissionService.prepareFirstAdmission 從 SDK 產生的 VerifiedSignedDocument 建立並驗證候選證據。它並不附加或暗示承認。
AdmissionService.admitFirst 在 MWP-ADM-006 下執行當前驗證、權威查找、候選創建、原子附加或返回現有以及返回記錄驗證。
AdmissionService.verifyHistoricalAdmission 根據 MWP-ADM-008 的要求,使用歷史 Registry 證據重新運行六階段驗證,並需要現有記錄而不發布上下文或附加。
AdmittedSignedDocument 返回不可變的 verified 和 record 證據以及防禦性 recordBytes 副本。

確切的權威缺席值為 { status: "authoritative-absence" }。呼叫者提供的信任布林值不是準入查找結果,絕不能選擇成功路徑。

admitFirst 在查閱日誌之前完成所有六個簽章文件階段。找到的記錄經過驗證並返回,無需發出可信上下文或附加。權威缺席後,服務發布可信任上下文,準備規範候選字節,呼叫 appendOrReturnExisting,並驗證實際傳回的記錄。只有當其架構、經過驗證的服務、文件綁定和可信任時間通過 MWP-ADM-009 和 MWP-ADM-010 時,並發獲勝者才是可接受的。

歷史重播使用保留的 Registry 歷史記錄重新運行驗證,需要 status: "found",並且從不呼叫 TrustedAdmissionContext.issue 或 AdmissionLog.appendOrReturnExisting。匹配的記錄ID表明恢復了相同的權威記錄;它們不證明 Command 新鮮度、簽署者授權、狀態機接受或便攜式日誌證明驗證。這些在 MWP-ADM-013 和 MWP-ADM-014 下保持獨立。

AdmissionError 公開 wireCode: "AUTH_INVALID_SIGNATURE" 並受保護的 auditDetail.stage: "admission"。穩定的受保護原因可區分缺失、衝突、畸形、未經驗證、不可用、不確定和自錨證據,同時保留 MWP-ADM-012 所需的非神諭線結果。

適配器可能會拋出 AdmissionLogError 以及受支援的準入原因。其他適配器例外不會自動重新分類。部署必須刻意映射其失敗,並且不得將一般成功、可用性或快取狀態視為經過驗證的證據。