eSIM RSP 测试用例对比站

人工切片(-man) ↔ Cas 盲生成(-cas)· 真机真卡执行证据对照

4.2.27.2.1 ES10b 获取 RAT

TC_eUICC_ES10b.GetRAT

章节:4.2.27 · ES10b (LPA -- eUICC): GetRAT配对状态:PAIRED报告生成:2026-10-08 22:57:11数据包生成:2026-10-08 22:57:09
-man 人工切片
终态
ok `_ok` 复用(结构 A1-A7 PASS;`_ok` run 无厂商错误行)
ErrorCount
0
执行 job
20261007_132542:de798e97d13c4384afbec7a40a8f6a9b
html_run
20261007_135307
包 sha256
06ef89911771d5b0…
包大小
242.6 KB
日志源:logs/20261007_135307/extracted/ESIM_TEST_SGP_23/TC_eUICC_ES10c_GetRAT_01.html
-cas 盲生成
终态
failed 纯 native 零卡态前置(N0)
ErrorCount
19
执行 job
8517794185134aaca8b461dd3605f3d2
html_run
8517794185134aaca8b461dd3605f3d2
包 sha256
2d5c18a63e79d571…
包大小
833.5 KB
判定
RERUN
路由
native_N0
状态轴
execution=red_verify / place=not_attempted / release=not_ready / card_state=n/a

差异概览(机械口径)

闭包文件层(l1)
man 34 / cas 82 个 JS;共同 31,一致 30,man-only 3,cas-only 51
命令序列层(l2)
man 39 / cas 14 条命令;完全一致 7,核心一致 4,长度尾部差 2,man-only 28,cas-only 3
规范覆盖(l3)
spec_steps 1,缺失 REQ 0 项,checkData 27 次,计数缺口 0,物化 FULL,执行 FAIL
断言自证(attestation)
js 断言 23 条 / 绑定层 0 条 / 缺口 0
机械差异分类
轴说明计数
RUN_DIFFman 通过 / cas 失败1
SCRIPT_DIALECT闭包文件差:man-only 3 / cas-only 51;命令序列差:man-only 28 / cas-only 385

对比报告

4.2.27.2.1 TC_eUICC_ES10b.GetRAT — -man ↔ -cas diff 报告

交付形态说明:本报告随专家交付包分发——-man/-cas 脚本包 zip 与 190server HTML 执行日志已内联至 packages/、evidence-html/,相应路径已相对化;TTR、spec_intl、caseir 等仓内留痕仍为生成机原始路径(未随包)。
  • 生成时间:2026-10-08 22:57:11 |引擎:holiday-blk5/0.1|配对状态:PAIRED
  • 分母口径:卡侧 61 之一

1. 配对与包

侧包/源sha256源类型入口用例
-man4.2.27.2.1-TC_eUICC_ES10b.GetRAT-man.zip06ef89911771d5b0614ab0749006dc714d172c55dcd30e358e6fcaad4d921f66zipTC_eUICC_ES10c_GetRAT_01
-cas4.2.27.2.1-TC_eUICC_ES10b.GetRAT-cas.zip2d5c18a63e79d571bb4da94479fe6e4b3067d316d78cee094ebb3e00b96434ebzip—
  • man 源路径:../packages/man/4.2.27.2.1-TC_eUICC_ES10b.GetRAT-man.zip
  • cas 源路径:../packages/cas/4.2.27.2.1-TC_eUICC_ES10b.GetRAT-cas.zip
  • 上游来源:{"man_ledger": true, "cas_ledger": true, "naming_map": true, "html_probe": true, "man_package": true, "cas_package": true}
  • 适用性:naming-map=M ["M", "M", "M", "M", "M"];caseir=M

2. 执行摘要(双方 job/终态)

侧终态/计划备注ErrorCountjob_id业务状态TTR诊断包
-manok_ok 复用(结构 A1-A7 PASS;_ok run 无厂商错误行)020261007_132542:de798e97d13c4384afbec7a40a8f6a9b—/Users/yuhu/cas/原料/切片/4.2.27.2.1-TC_eUICC_ES10b.GetRAT/logs/20260907_120430_ok/extracted/ESIM_TEST_SGP_23/TC_eUICC_ES10c_GetRAT_01.ttr—
-casfailed纯 native 零卡态前置(N0)198517794185134aaca8b461dd3605f3d2—/Users/yuhu/cas/experiments/4.2.27.2.1-TC_eUICC_ES10b.GetRAT-20260928_043958/logs/8517794185134aaca8b461dd3605f3d2/result/TC_eUICC_ES10b_GetRAT/TC_eUICC_ES10b_GetRAT_01_02_merged.ttr—
  • cas 块4账本:decision=RERUN;route=native_N0;live 事件 1 条(4.6 波次进行中;以块4终版账本为准)
  • cas 4.6 波次最新执行:terminal=failed;stage=verify;job=8517794185134aaca8b461dd3605f3d2;gaps=["trace verdict=PASS", "结果通道 verdict='FAIL'"]
  • cas 失败归因引用(块4):b2-attribution.md
  • cas 证据来源分层:RERUN → 本轮 4.6 波次执行

3. HTML 执行日志状态

  • -man:NATIVE(../evidence/4.2.27.2.1/man/TC_eUICC_ES10c_GetRAT_01.html;sha256 0c2685e36fb7e682c2b4aecdfd57c6c07b48e8082c9ac3474e40b15c1d4ed88b;78182 bytes)
  • -cas:NATIVE(../evidence/4.2.27.2.1/cas/TC_eUICC_ES10b_GetRAT_01_02_merged.html;sha256 8c620d1a12db8bcd8a446d0bb1e3ac17021e5abf832300e5d4f1fafb07a0cc33;23624 bytes)
  • 纪律:原生缺失 → HTML_UNAVAILABLE 显式阻断(附探针结论);派生件仅标 DERIVED_NOT_NATIVE,不冒充原生。

4. L1 脚本/依赖/命名差异(源文件闭包级)

  • 闭包规模:man 34 文件 / cas 82 文件;同名 31(字节同 30,内容异 1)
  • 同名内容异:Import/TestCase_SGP_23.js
  • man-only 文件 3:ESIM_TEST_SGP_23.UCE, ESIM_TEST_SGP_23.sol, MANIFEST.json
  • cas-only 文件 51:Import/CapInfo.js, Import/ExecuteTestCase.js, Import/ExecuteTestCase_CSC.js, Import/ExecuteTestCase_LoadProfile_via_bip.js, Import/ExecuteTestCase_Local_Management.js, Import/ExecuteTestCase_Non_Telecom_Profile.js, Import/ExecuteTestCase_Performance.js, Import/ExecuteTestCase_PressureTest.js, Import/ExecuteTestCase_ProfileFormatTest_V_2_3_1.js, Import/ExecuteTestCase_ProfileServicesListTest.js …
  • 注:man 包=切片最小闭包(script/ 投影);cas 包=slice_native 全工程投影(厂商参照闭包+生成体)。闭包规模差为打包形态差异;同名文件字节差集中于 Import/TestCase_SGP_23.js(TC 入口本体)。

4.1 入口代码对照

  • 行数:man 63 / cas 97;字符:man 2084 / cas 8703
  • man 顶层调用 Top:[["TestStepStart2", 9], ["LPAd_Transport_data_to_eUICC", 3], ["CheckData", 3], ["TC_eUICC_ES10c_GetRAT_02_Nominal_With_additional_PPARs", 2], ["TraceStart", 2], ["Ini_powerOn_eUICC_LPAe_not_activate", 2], ["TS_MANAGE_CHANNEL_OPEN", 2], ["TS_SELECT", 2], ["RecoverCard", 2], ["TC_eUICC_ES10c_GetRAT_01", 1]]
  • cas bind 调用:[["checkData", 27], ["sendApdu", 5], ["resetAndAtr", 1], ["runToSteadyState", 1], ["sendTerminalProfile", 1], ["manageChannelOpen", 1]]
方言映射对命中数
TS_*_cmd() ↔ bind.* 命令封装4
unified diff(截断预览)
--- man
+++ cas
@@ -1,62 +1,96 @@
-// slice of Import\TestCase_SGP_23.js - cases: TC_eUICC_ES10c_GetRAT_01 + TC_eUICC_ES10c_GetRAT_02_Nominal_With_additional_PPARs (extracted verbatim)
+// Author: 卡思Cas智能体
+// Date: 20260928-201725
+// Function: (purpose 原文未由 SGP.23 该 TC 提供,corpus vacuum 登记)TC_eUICC_ES10b.GetRAT,Test Sequence #01 Nominal: Get Default RAT; #02 Nominal: With additional PPARs,适用性 M。
+// Test points: ICH-IC1-K1-C1 ATR_present;ICH-IC1-K2-C2 FCP_Template;ICH-IC1-K2-C4 SW
+//   ICH-IC1-K3-C4 SW;ICH-IC1-K4-C4 final SW;ICH-IC2-K1-C4 SW;ICH-IC2-K1-C3 CHANNEL_NUMBER extracted
+//   ICH-IC2-K2-C4 SW;S1-C1 SW;S1-C2 GetRatResponse outer tag;S1-C2 rat member count 1
+//   S1-C2 rat value-order equality;S1-C3 PPRS_ALLOWED DER
+//   S1-C4 RQ57_182 order vacuous (single PPAR);S1-C5 RQ57_181 response well-formed TLV outer BF43
+//   S1-C6 RQ57_180 command data;S2-C1 SW;S2-C2 GetRatResponse outer tag;S2-C2 rat member count 4
+//   S2-C2 rat value-order equality;S2-C3 PPR1_WITH_OWNER_GID DER;S2-C4 PPR1_WITHOUT_GID DER
+//   S2-C5 PPR2_WITHOUT_CONSENT DER;S2-C6 PPRS_ALLOWED DER
+//   S2-C7 RQ57_182 stored order (carried by rat_eq ordered equality);S2-C8 RQ57_180 command data
+//   S2-C9 RQ57_181 response well-formed TLV outer BF43
+// 本函数由 CaseIR 4.2.27.2.1 编译生成(Q3-W0-PILOT,SGP.23 v1.16 × SGP.22 v2.7):字节权威=CaseIR,非誊录黄金脚本。
+// Value-free template: every data byte is injected from CaseIR fields; no scaffold globals (see docs/speconly/compile-symbol-migration.md).
+// 适用性 M:编译期门,运行时由 harness 环境前置承担。
+function TC_eUICC_ES10b_GetRAT_01_02_merged() {
+    var bind = curBind;
 
-function TC_eUICC_ES10c_GetRAT_01()
-{
-	tracenamestr = "测试目的:验证eUICC可以配置SGP.21 Annex H中定义的RAT";
-	curDis.TraceStart(sno++,tracenamestr);
+    // IC head inline (initial_conditions → PROC_EUICC_INITIALIZATION_SEQUENCE, K row 1):RESET(K 语料机械展开)
+    var s3 = bind.resetAndAtr();
+    bind.checkData("ICH-IC1-K1-C1 ATR_present", "1", s3.atr_hex !== "" ? "1" : "0");
 
-	curLogicChannel = 0;
-	curDis.TestStepStart2(stno++,"eUICC卡片初始化;");
-	Ini_powerOn_eUICC_LPAe_not_activate();
+    // IC head inline (initial_conditions → PROC_EUICC_INITIALIZATION_SEQUENCE, K row 2):SELECT_MF(K 语料机械展开)
+    // FCP outer tag not materialized from clause: tag-face asserted only when corpus fixes the tag byte (e.g. TS 102 221 FCP '62').
+    var s4 = bind.sendApdu("00", "A4", "00", "04", "3F00", "00", "9000");
+    bind.checkData("ICH-IC1-K2-C2 FCP_Template", "1", s4.resp.length > 0 ? "1" : "0");
+    bind.checkData("ICH-IC1-K2-C4 SW", "9000", s4.sw);
 
-	curDis.TestStepStart2(stno++,"读卡器向卡片发送MANAGE_CHANNEL命令,打开辅助逻辑通道;");
-	TS_MANAGE_CHANNEL_OPEN();
+    // IC head inline (initial_conditions → PROC_EUICC_INITIALIZATION_SEQUENCE, K row 3):TERMINAL_CAPABILITY_LPAd(K 语料机械展开)
+    var s5 = bind.sendApdu("80", "AA", "00", "00", "A9058100830107", null, "9000");
+    bind.checkData("ICH-IC1-K3-C4 SW", "9000", s5.sw);
 
-	curLogicChannel = 1;
+    // IC head inline (initial_conditions → PROC_EUICC_INITIALIZATION_SEQUENCE, K row 4):TERMINAL_PROFILE(K 语料机械展开)
+    var steady6 = bind.runToSteadyState(function () {
+        return bind.sendTerminalProfile("FFFFFFFF7F9D00DFBF00001FE2000000C7EB0000000168005000000000000200", "9000");
+    });
+    bind.checkData("ICH-IC1-K4-C4 final SW", "9000", steady6.final.sw);
 
-	curDis.TestStepStart2(stno++,"读卡器向卡片发送SELECT命令,选择ISD-R;");
-	TS_SELECT("Select ISD",ISD_R_AID,"9000");
+    // IC head inline (initial_conditions → PROC_OPEN_LOGICAL_CHANNEL_AND_SELECT_ISDR, K row 1):MANAGE_CHANNEL_OPEN(K 语料机械展开)
+    // CHANNEL_NUMBER extraction and dynamic CLA rebinding are CasBind internal state (chaining rule; no generated-code re-implementation).
+    var s7 = bind.manageChannelOpen("9000");
+    bind.checkData("ICH-IC2-K1-C4 SW", "9000", s7.sw);
+    bind.checkData("ICH-IC2-K1-C3 CHANNEL_NUMBER extracted", "1", s7.chan !== null ? "1" : "0");
 
-	curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,GET_RAT");
+    // IC head inline (initial_conditions → PROC_OPEN_LOGICAL_CHANNEL_AND_SELECT_ISDR, K row 2):MTD_SELECT(K 语料机械展开)
+    // CLA = bound channel (cla_rule) and <L> length binding are CasBind internal state (chaining rule; no generated-code re-implementation).
+    var s8 = bind.sendApdu(null, "A4", "04", "00", "A0000005591010FFFFFFFF8900000100", null, "9000");
+    // MTD_SELECT expected face is SW-only (K Annex C.2 open-channel procedure step 2: no FCI content assertion in corpus); no fabricated template parse.
+    bind.checkData("ICH-IC2-K2-C4 SW", "9000", s8.sw);
 
-	var respData = LPAd_Transport_data_to_eUICC(GetRatRequestHexStr);
-	curStrHandle.CheckData(R_DEFAULT_RAT, respData, "R_DEFAULT_RAT");
+    // 步骤 1:MTD_STORE_DATA(tc_step;REQ: RQ28_001, RQ29_007_1, RQ29_008, RQ29_009, RQ29_011, RQ29_016, RQ57_179, RQ57_180, RQ57_181, RQ57_182, RQ57_184, RQ57_186, RQ29_007)
+    // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
+    var sdCla1 = s7.chan !== null ? (s7.chan <= 3 ? 128 + s7.chan : 188 + s7.chan).toString(16).toUpperCase() : null;
+    var s1 = bind.sendApdu(sdCla1, "E2", "91", "00", "BF4300", "00", "9000");
+    bind.checkData("S1-C1 SW", "9000", s1.sw);
+    // grat ES10b GetRAT 响应面(外层 BF43,S22_tag_table Table 66 + I_annexD3_es10x:179/249;PPAR 成员 DER 定位 = S22_5_7_22_rat + S22_2_4a_1_ppr_operator_ids 语料闭合推导,期望值编译期注入):
+    var rgw1 = BindGecaProc.parseGecaResponse(s1.resp, {outer: "BF43", required: [], optional: []});
+    var rrat1 = (rgw1.children.length === 1) ? BindEs10xSingleRequest.parseBerTlv(rgw1.children[0].value) : [];
+    bind.checkData("S1-C2 GetRatResponse outer tag", "BF43", rgw1.outer_tag === null ? "absent" : rgw1.outer_tag);
+    bind.checkData("S1-C2 rat member count 1", "1", (rgw1.children.length === 1 && rrat1.length === 1) ? "1" : "0");
+    var rratExp1 = ["301503020560300B30090403EEEEEE0400040003020780"];
+    var rratEq1 = (rrat1.length === rratExp1.length);
+    for (var rri1 = 0; rri1 < rrat1.length && rri1 < rratExp1.length; rri1++) {
+        if (BindEs10xSingleRequest.buildTlv(rrat1[rri1].tag, rrat1[rri1].value) !== rratExp1[rri1]) { rratEq1 = false; }
+    }
+    bind.checkData("S1-C2 rat value-order equality", "1", rratEq1 ? "1" : "0");
+    bind.checkData("S1-C3 PPRS_ALLOWED DER", "301503020560300B30090403EEEEEE0400040003020780", rrat1.length > 0 ? BindEs10xSingleRequest.buildTlv(rrat1[0].tag, rrat1[0].value) : "absent");
+    bind.checkData("S1-C4 RQ57_182 order vacuous (single PPAR)", "1", rrat1.length === 1 ? "1" : "0");
+    bind.checkData("S1-C5 RQ57_181 response well-formed TLV outer BF43", "1", rgw1.ok ? "1" : "0");
+    bind.checkData("S1-C6 RQ57_180 command data", "BF4300", s1.cmd.substring(10, 16));
 
-
-	RecoverCard();
+    // 步骤 2:MTD_STORE_DATA(tc_step;REQ: RQ28_001, RQ29_007_1, RQ29_008, RQ29_009, RQ29_010_1, RQ29_011, RQ29_016, RQ57_179, RQ57_180, RQ57_181, RQ57_182, RQ57_184, RQ57_186, RQ29_007, RQ29_008_1)
+    // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
+    var sdCla2 = s7.chan !== null ? (s7.chan <= 3 ? 128 + s7.chan : 188 + s7.chan).toString(16).toUpperCase() : null;
+    var s2 = bind.sendApdu(sdCla2, "E2", "91", "00", "BF4300", "00", "9000");
+    bind.checkData("S2-C1 SW", "9000", s2.sw);
+    // grat ES10b GetRAT 响应面(外层 BF43,S22_tag_table Table 66 + I_annexD3_es10x:179/249;PPAR 成员 DER 定位 = S22_5_7_22_rat + S22_2_4a_1_ppr_operator_ids 语料闭合推导,期望值编译期注入):
+    var rgw2 = BindGecaProc.parseGecaResponse(s2.resp, {outer: "BF43", required: [], optional: []});
+    var rrat2 = (rgw2.children.length === 1) ? BindEs10xSingleRequest.parseBerTlv(rgw2.children[0].value) : [];
+    bind.checkData("S2-C2 GetRatResponse outer tag", "BF43", rgw2.outer_tag === null ? "absent" : rgw2.outer_tag);
+    bind.checkData("S2-C2 rat member count 4", "1", (rgw2.children.length === 1 && rrat2.length === 4) ? "1" : "0");
+    var rratExp2 = ["301D0302064030133011040392F928040447534D410404525350FF03020780", "30110302064030073005040392F94803020780", "301403020520300B3009040392EEEE04000400030100", "301503020560300B30090403EEEEEE0400040003020780"];
+    var rratEq2 = (rrat2.length === rratExp2.length);
+    for (var rri2 = 0; rri2 < rrat2.length && rri2 < rratExp2.length; rri2++) {
+        if (BindEs10xSingleRequest.buildTlv(rrat2[rri2].tag, rrat2[rri2].value) !== rratExp2[rri2]) { rratEq2 = false; }
+    }
+    bind.checkData("S2-C2 rat value-order equality", "1", rratEq2 ? "1" : "0");
+    bind.checkData("S2-C3 PPR1_WITH_OWNER_GID DER", "301D0302064030133011040392F928040447534D410404525350FF03020780", rrat2.length > 0 ? BindEs10xSingleRequest.buildTlv(rrat2[0].tag, rrat2[0].value) : "absent");
+    bind.checkData("S2-C4 PPR1_WITHOUT_GID DER", "30110302064030073005040392F94803020780", rrat2.length > 1 ? BindEs10xSingleRequest.buildTlv(rrat2[1].tag, rrat2[1].value) : "absent");
+    bind.checkData("S2-C5 PPR2_WITHOUT_CONSENT DER", "301403020520300B3009040392EEEE04000400030100", rrat2.length > 2 ? BindEs10xSingleRequest.buildTlv(rrat2[2].tag, rrat2[2].value) : "absent");
+    bind.checkData("S2-C6 PPRS_ALLOWED DER", "301503020560300B30090403EEEEEE0400040003020780", rrat2.length > 3 ? BindEs10xSingleRequest.buildTlv(rrat2[3].tag, rrat2[3].value) : "absent");
+    bind.checkData("S2-C7 RQ57_182 stored order (carried by rat_eq ordered equality)", "1", rratEq2 ? "1" : "0");
+    bind.checkData("S2-C8 RQ57_180 command data", "BF4300", s2.cmd.substring(10, 16));
+    bind.checkData("S2-C9 RQ57_181 response well-formed TLV outer BF43", "1", rgw2.ok ? "1" : "0");
 }
-
-function TC_eUICC_ES10c_GetRAT_02_Nominal_With_additional_PPARs()
-{
…(差异行超限,共 152 行,此处截断)
### 4.2 UCE/命名对照
  • man:ESIM_TEST_SGP_23.UCE;入口 [('TC_eUICC_ES10c_GetRAT_01', 'ES10c(LPA -- eUICC):GetRAT', 'Import\\\\ExecuteTestCase_SGP_23.js(TC_eUICC_ES10c_GetRAT_01)')];参数 {"ReaderName": "Identiv SCR35xx USB Smart Card Reader 0"}
  • cas:TC_eUICC_ES10b_GetRAT/TC_eUICC_ES10b_GetRAT.uce;入口 [('TC_eUICC_ES10b_GetRAT_01_02_merged', 'TC_eUICC_ES10b_GetRAT', 'Import\\\\ExecuteTestCase_spec.js(TC_eUICC_ES10b_GetRAT_01_02_merged)')];参数 {"ReaderName": "Identiv SCR35xx USB Smart Card Reader 0"}

5. L2 步骤/APDU/step_map 差异(结构化对齐)

  • 命令计数:man 39 / cas 14;精确对齐 7,核心(CLA·INS·P1·P2·Lc)同 4,man-only 28,cas-only 3
#-man-cas对齐
1@RESET@RESETexact
200A40004023F0000A40004023F0000core_same
300C000002000C0000020exact
480AA000007A905810083013780AA000007A9058100830107core_same
5801200000F801200000Fexact
6801400000C810301250082028281830100801400000C810301250082028281830100exact
700700000010070000001exact
801A4040010A0000005591010FFFFFFFF890000010001A4040010A0000005591010FFFFFFFF8900000100exact
901C000002101C0000021exact
1081E2910003BF430081E2910003BF430000core_same
1181E2910003BF200081E2910003BF430000core_same
—man-only: 8010000023FFFFFFFF7F9D00DFBF00001FE20000…0000038, 0070000000, 01C000001C, @RESET, 00A40004023F00, 00C0000020, 80AA000007A9058100830137, 8010000023FFFFFFFF7F9D00DFBF00001FE20000…0000038, 801200000F, 801400000C810301250082028281830100, 0070000000, 0070000001
—cas-only: 8010000020FFFFFFFF7F9D00DFBF00001FE20000…0000200, 81C000001C, 81C000001C

6. L3 规范字段/Expected/REQ/通过条件差异

  • spec:/Users/yuhu/cas/原料/切片/4.2.27.2.1-TC_eUICC_ES10b.GetRAT/spec_intl/SGP.23-v1.16_4.2.27_GetRAT.md(风格:table);caseir:/Users/yuhu/cas/experiments/4.2.27.2.1-TC_eUICC_ES10b.GetRAT-20260928_043958/caseir_materialized_gate.json
步规范动作Expected 片段规范 REQcas 检查cas REQman 实现man 结果
1MTD_STORE_DATA(#GET_RAT)1["RQ28_001", "RQ29_007_1", "RQ29_008", "RQ29_009", "RQ29_011", "RQ29_016", "RQ57_179", "RQ57_180", "RQ57_181", "RQ57_182", "RQ57_184", "RQ57_186", "RQ29_007"]["S1-C1", "S1-C2", "S1-C3", "S1-C4", "S1-C5", "S1-C6", "S2-C1", "S2-C2", "S2-C3", "S2-C4", "S2-C5", "S2-C6", "S2-C7", "S2-C8", "S2-C9"]["RQ28_001", "RQ29_007", "RQ29_007_1", "RQ29_008", "RQ29_008_1", "RQ29_009", "RQ29_010_1", "RQ29_011", "RQ29_016", "RQ57_179", "RQ57_180", "RQ57_181", "RQ57_182", "RQ57_184", "RQ57_186"]LPAd_Transport_data_to_eUICC(GetRatRequestHexStr)(L22,请求 `通过(StoreData 611C→GET RESPONSE 9000,响应 BF4319A0173015800205 56 0A10B30098003EEEEEE 8100 8200 82020780——R_DEFAULT_RAT 期望值=实际值逐字节相等,SW=9000,ttr APDU40-APDU47)

6.1 充分性分析(启发式,不作最终裁定)

  • cas:NO_MECHANICAL_GAPS(全步有检查=True;REQ 全覆盖=True;ErrorCount==0=False)
  • cas 物化核对(启发式旁证,权威见下行 attestation):声明检查 15 项 / 生成体 checkData 27 次 / S 标号重合 15 / 计数缺口 0 / 形态 FULL;执行面 FAIL(计数缺口须结合绑定层隐含断言核验,非直接判缺陷)
  • cas 编译器自证(check_attestation,同批构建):声明 None = js 23 + binding 0 + gap 0;缺口判定以本行为权威(启发式计数仅旁证)
  • man:mapping 行 4 / 规范步 1;TTR 期望/实际回声 58;厂商工具内置审计(TTR 期望/实际回声行为证据);脚本字节级充分性不可完全外部验证
  • caseir open_items:
  • SEQ01 卡态前置(procedure=null prose,E_tc_4227:30 锚):"The EUM has configured the eUICC's RAT as defined in section G.2.4."——EUM 侧 RAT 配置属卡态编排责任(batch card_state prep 框架辖属),非 CaseIR 步骤
  • SEQ02 卡态前置(procedure=null prose,E_tc_4227:49 锚):"The EUM has configured the eUICC's RAT as defined in section G.2.5."——同上
  • SEQ02 卡态前置(procedure=null prose,E_tc_4227:50 锚):"There is no Profile installed in the eUICC."——序列 #02 初始卡态(E 表484 步2-4 Install/Delete 声明面执行结束后亦归复此态)
  • 卡态前置声明(E 表484 步2,E_tc_4227:59 逐字锚;裁定 B fix-14 收尾:移出 steps 落 open_items 声明面——脚本不编译,batch card_state prep 辖属;compile 忽略 open_items):action 逐字 "Install PROFILE_OPERATIONAL4"——REQ 挂靠 RQ29_010_1、RQ29_022、RQ29_008_1(E 表484 步2 REQ 列逐字);期望面 "Profile successfully downloaded (i.e. ProfileInstallationResult contains a SuccessResult)"(E 段 Expected 逐字):安装被接受即证明该 Profile 携带的 PPR 与步骤 2 读回的 RAT 规则匹配(install_acceptance_dependency);子流程 unresolved 如实登记:Install PROFILE_OPERATIONAL4 的子流程展开(下载会话、BPP 生成与加载、ProfileInstallationResult 回收)——K 段无定义:K_annexC2_procs 仅含 PROC_EUICC_INITIALIZATION_SEQUENCE(表1256)/ PROC_EUICC_INITIALIZATION_SEQUENCE_eUICCProfileStateChanged(表1257)/ PROC_OPEN_LOGICAL_CHANNEL_AND_SELECT_ISDR(表1258),无 Install Profile 过程;Annex E Profile Package 内容亦不在输入包
  • 卡态前置声明(E 表484 步3,E_tc_4227:60 逐字锚;裁定 B 同上):action 逐字 "Delete PROFILE_OPERATIONAL4"——REQ 挂靠(E 表484 步3 REQ 列空);期望面(无 Expected 列断言);子流程 unresolved 如实登记:Delete PROFILE_OPERATIONAL4 的方法调用形式与目标标识(iccid #ICCID_OP_PROF4 抑或 isdpAid <ISD_P_AID4>)——K 段无定义(K 仅含三个 PROC,无 Delete Profile 过程);E 段未指定删除方式;H_annexC1_methods 的 MTD_DELETE_PROFILE 要求 paramIccidValue/paramIsdpAidValue 二选一,语料未给出选择依据
  • 卡态前置声明(E 表484 步4,E_tc_4227:61 逐字锚;裁定 B 同上):action 逐字 "Install PROFILE_OPERATIONAL3"——REQ 挂靠 RQ29_010_1、RQ29_022、RQ29_008_1(E 表484 步4 REQ 列逐字);期望面 "Profile successfully downloaded (i.e. ProfileInstallationResult contains a SuccessResult)"(E 段 Expected 逐字):安装被接受即证明该 Profile 携带的 PPR 与步骤 2 读回的 RAT 规则匹配(install_acceptance_dependency);子流程 unresolved 如实登记:Install PROFILE_OPERATIONAL3 的子流程展开——K 段无定义(同表484 步2);Annex E Profile Package 内容与安装子流程步骤不在输入包

7. 分类结论(封闭枚举)

轴计数说明
RUN_DIFF1man 通过 / cas 失败
SCRIPT_DIALECT85闭包文件差:man-only 3 / cas-only 51;命令序列差:man-only 28 / cas-only 3
  • 置信度:heuristic;需人工复核:False

8. 证据路径

  • man 包:../packages/man/4.2.27.2.1-TC_eUICC_ES10b.GetRAT-man.zip
  • man TTR:/Users/yuhu/cas/原料/切片/4.2.27.2.1-TC_eUICC_ES10b.GetRAT/logs/20260907_120430_ok/extracted/ESIM_TEST_SGP_23/TC_eUICC_ES10c_GetRAT_01.ttr
  • cas 包/源:../packages/cas/4.2.27.2.1-TC_eUICC_ES10b.GetRAT-cas.zip
  • cas TTR:/Users/yuhu/cas/experiments/4.2.27.2.1-TC_eUICC_ES10b.GetRAT-20260928_043958/logs/8517794185134aaca8b461dd3605f3d2/result/TC_eUICC_ES10b_GetRAT/TC_eUICC_ES10b_GetRAT_01_02_merged.ttr
  • spec_intl:/Users/yuhu/cas/原料/切片/4.2.27.2.1-TC_eUICC_ES10b.GetRAT/spec_intl/SGP.23-v1.16_4.2.27_GetRAT.md
  • caseir:/Users/yuhu/cas/experiments/4.2.27.2.1-TC_eUICC_ES10b.GetRAT-20260928_043958/caseir_materialized_gate.json
  • step_map:—