公开副本:本地路径及实验主机已脱敏;图片/数据拆为站内资源。原报告中的校验哈希对应本地原件,不认证公开副本字节。研究分类与范围仍未获人工金标或外部独立审查。

ODK Collect · Download / Rep1

121次Ⅰ输入,1个源State;121次精确映射,0次历史未映射。

A / B / C

口径State数与C交集
A上轮Header g16s7044
B原图00
B去明确返回00
C发生参考99

C是有限的入口触发发生参考,不是排他State金标。B的C外节点需区分共享/扩展/明确移交。图上聚合路径不冒充连续轨迹,confirmed=0保留。

真实入口示例:Source、控件与Target

g16e211:325

source g1s1

g1s1真实归档图
同 State 历史代表截图,非该次输入截图;高亮只作 bounds 投影提示
alignment: unverified_state_representative

target g16s70

g16s70真实归档图
同 State 历史代表截图,非该次输入截图;高亮只作 bounds 投影提示
alignment: unverified_state_representative
Action、GUI与原始输入/转换定位
{
  "transition_id": "g16e211:325",
  "state": "g1s1",
  "target_state": "g16s70",
  "source_activity": "org.odk.collect.android.mainmenu.MainMenuActivity",
  "target_activity": "org.odk.collect.android.activities.FormDownloadListActivity",
  "model_action": "g1a8",
  "input_model_action": "g1a8",
  "action_type": "MODEL_CLICK",
  "identity": "MODEL_CLICK|/*[@class=\"android.widget.FrameLayout\"][@resource-id=\"\"][@text=\"\"][@content-desc=\"\"][@index=0][@enabled='true'][@clickable='false'][@checkable='false'][@long-clickable='false'][@scrollable='false']/*[@class=\"android.widget.ScrollView\"][@resource-id=\"\"][@text=\"\"][@content-desc=\"\"][@index=0][@enabled='true'][@clickable='false'][@checkable='false'][@long-clickable='false'][@scrollable='false']/*[@class=\"android.widget.ScrollView\"][@resource-id=\"\"][@text=\"\"][@content-desc=\"\"][@index=2][@enabled='true'][@clickable='false'][@checkable='false'][@long-clickable='false'][@scrollable='false']/*[@class=\"android.widget.FrameLayout\"][@resource-id=\"org.odk.collect.android:id/get_forms\"][@text=\"\"][@content-desc=\"\"][@index=4][@enabled='true'][@clickable='false'][@checkable='false'][@long-clickable='false'][@scrollable='false']/*[@class=\"android.widget.TextView\"][@resource-id=\"org.odk.collect.android:id/name\"][@text=\"Download\"][@content-desc=\"\"][@index=4][@enabled='true'][@clickable='true'][@checkable='false'][@long-clickable='false'][@scrollable='false'][@enabled='true'][@clickable='true'][@checkable='false'][@long-clickable='false'][@scrollable='false']",
  "resource_id": "org.odk.collect.android:id/name",
  "text": "Download",
  "content_desc": "",
  "class": "android.widget.TextView",
  "bounds": [
    231,
    1144,
    912,
    1207
  ],
  "planned_input_text": null,
  "source_gui_id": 456,
  "target_gui_id": 457,
  "final_exact": true,
  "edge_id": "g16e211",
  "input_path": "[WORKSPACE]/experiments/guitaboo_formal_emulator_20261103T1725/formal-runs/rep1-pure-batch1/odkcollect-rep1-pure-b1/formal/device-output/formal/sata-org.odk.collect.android-ape-sata-running-minutes-60/jev-audit/inputs/generated-1728.json",
  "receipt_path": "[WORKSPACE]/experiments/guitaboo_formal_emulator_20261103T1725/formal-runs/rep1-pure-batch1/odkcollect-rep1-pure-b1/formal/device-output/formal/sata-org.odk.collect.android-ape-sata-running-minutes-60/jev-receipts/transition-g16e211-325.json",
  "event_path": "[WORKSPACE]/experiments/guitaboo_formal_emulator_20261103T1725/formal-runs/rep1-pure-batch1/odkcollect-rep1-pure-b1/formal/device-output/formal/sata-org.odk.collect.android-ape-sata-running-minutes-60/jev-events.jsonl",
  "event_line": 852
}

全部Ⅰ入口成员

SourceModelAction控件/text/desc执行次数Targets
g1s1g1a8org.odk.collect.android:id/name / Download / 121{'g1s2': 28, 'g16s70': 90, 'g1s1': 2, 'g16s71': 1}

关键反例:具体确认输入

g16e248:1317

source g1s1

g1s1真实归档图
同 State 历史代表截图,非该次输入截图;高亮只作 bounds 投影提示
alignment: unverified_state_representative

target g16s70

g16s70真实归档图
同 State 历史代表截图,非该次输入截图;高亮只作 bounds 投影提示
alignment: unverified_state_representative
Action、GUI与原始输入/转换定位
{
  "transition_id": "g16e248:1317",
  "state": "g1s1",
  "target_state": "g16s70",
  "source_activity": "org.odk.collect.android.mainmenu.MainMenuActivity",
  "target_activity": "org.odk.collect.android.activities.FormDownloadListActivity",
  "model_action": "g1a5",
  "input_model_action": "g1a5",
  "action_type": "MODEL_CLICK",
  "identity": "MODEL_CLICK|/*[@class=\"android.widget.FrameLayout\"][@resource-id=\"\"][@text=\"\"][@content-desc=\"\"][@index=0][@enabled='true'][@clickable='false'][@checkable='false'][@long-clickable='false'][@scrollable='false']/*[@class=\"android.widget.ScrollView\"][@resource-id=\"\"][@text=\"\"][@content-desc=\"\"][@index=0][@enabled='true'][@clickable='false'][@checkable='false'][@long-clickable='false'][@scrollable='false']/*[@class=\"android.widget.ScrollView\"][@resource-id=\"\"][@text=\"\"][@content-desc=\"\"][@index=2][@enabled='true'][@clickable='false'][@checkable='false'][@long-clickable='false'][@scrollable='false']/*[@class=\"android.widget.FrameLayout\"][@resource-id=\"org.odk.collect.android:id/review_data\"][@text=\"\"][@content-desc=\"\"][@index=1][@enabled='true'][@clickable='false'][@checkable='false'][@long-clickable='false'][@scrollable='false']/*[@class=\"android.widget.TextView\"][@resource-id=\"org.odk.collect.android:id/name\"][@text=\"Drafts\"][@content-desc=\"\"][@index=1][@enabled='true'][@clickable='true'][@checkable='false'][@long-clickable='false'][@scrollable='false'][@enabled='true'][@clickable='true'][@checkable='false'][@long-clickable='false'][@scrollable='false']",
  "resource_id": "org.odk.collect.android:id/name",
  "text": "Drafts",
  "content_desc": "",
  "class": "android.widget.TextView",
  "bounds": [
    231,
    515,
    912,
    578
  ],
  "planned_input_text": null,
  "source_gui_id": 1522,
  "target_gui_id": 1523,
  "final_exact": true,
  "edge_id": "g16e248",
  "input_path": "[WORKSPACE]/experiments/guitaboo_formal_emulator_20261103T1725/formal-runs/rep1-pure-batch1/odkcollect-rep1-pure-b1/formal/device-output/formal/sata-org.odk.collect.android-ape-sata-running-minutes-60/jev-audit/inputs/generated-7402.json",
  "receipt_path": "[WORKSPACE]/experiments/guitaboo_formal_emulator_20261103T1725/formal-runs/rep1-pure-batch1/odkcollect-rep1-pure-b1/formal/device-output/formal/sata-org.odk.collect.android-ape-sata-running-minutes-60/jev-receipts/transition-g16e248-1317.json",
  "event_path": "[WORKSPACE]/experiments/guitaboo_formal_emulator_20261103T1725/formal-runs/rep1-pure-batch1/odkcollect-rep1-pure-b1/formal/device-output/formal/sata-org.odk.collect.android-ape-sata-running-minutes-60/jev-events.jsonl",
  "event_line": 3864
}

分叉、汇合与Dominator局部片段

g16s70 / g16s71 → g1s2

G g16s70 g16s70 FormDownloadListActivity target ×90 g1s2 g1s2 FormDownloadListActivity target ×28 g16s70->g1s2 g16e232 CLICK add_button exec 1 g16s71 g16s71 FormDownloadListActivity target ×1 g16s71->g1s2 g16e215 CLICK refresh_button exec 1 g1s1 g1s1 MainMenuActivity ROOT · source ×121 · target ×2 g1s1->g16s70 g16e211 CLICK name exec 90 g1s1->g16s70 g16e248 CLICK name exec 1 g1s1->g16s71 g16e255 CLICK name exec 1 g1s2->g1s2 g1e1 BACK exec 34

汇合点子树:g1s2;不包含上游两个分支。

g16s70 → [g16e232; confirmed=1] → g1s2

g16s71 → [g16e215; confirmed=1] → g1s2

g16s71 / g1s4 → g1s2

G g16s70 g16s70 FormDownloadListActivity target ×90 g16s71 g16s71 FormDownloadListActivity target ×1 g16s70->g16s71 g16e214 CLICK checkbox exec 4 g1s2 g1s2 FormDownloadListActivity target ×28 g16s71->g1s2 g16e215 CLICK refresh_button exec 1 g1s1 g1s1 MainMenuActivity ROOT · source ×121 · target ×2 g1s1->g16s70 g16e248 CLICK name exec 1 g1s1->g16s71 g16e255 CLICK name exec 1 g1s2->g1s2 g1e1 BACK exec 34 g1s3 g1s3 FormDownloadListActivity g1s3->g1s2 g1e6 CLICK refresh_button exec 1 g1s4 g1s4 FormDownloadListActivity g1s4->g1s3 g1e4 CLICK exec 3

汇合点子树:g1s2;不包含上游两个分支。

g16s71 → [g16e215; confirmed=1] → g1s2

g1s4 → [g1e4; confirmed=3] → g1s3 → [g1e6; confirmed=1] → g1s2

g16s70 / g1s2 → g1s3

G g16s70 g16s70 FormDownloadListActivity target ×90 g1s4 g1s4 FormDownloadListActivity g16s70->g1s4 g16e212 CLICK menu_sort exec 1 g1s1 g1s1 MainMenuActivity ROOT · source ×121 · target ×2 g1s1->g16s70 g16e211 CLICK name exec 90 g1s1->g16s70 g16e248 CLICK name exec 1 g1s2 g1s2 FormDownloadListActivity target ×28 g1s1->g1s2 g1e0 CLICK name exec 28 g1s3 g1s3 FormDownloadListActivity g1s2->g1s3 g1e2 CLICK button2 exec 20 g1s4->g1s3 g1e4 CLICK exec 3

汇合点子树:g1s3;不包含上游两个分支。

g16s70 → [g16e212; confirmed=1] → g1s4 → [g1e4; confirmed=3] → g1s3

g1s2 → [g1e2; confirmed=20] → g1s3

g16s70 / g1s3 → g1s4

G g16s70 g16s70 FormDownloadListActivity target ×90 g1s4 g1s4 FormDownloadListActivity g16s70->g1s4 g16e212 CLICK menu_sort exec 1 g1s1 g1s1 MainMenuActivity ROOT · source ×121 · target ×2 g1s1->g16s70 g16e211 CLICK name exec 90 g1s1->g16s70 g16e248 CLICK name exec 1 g1s3 g1s3 FormDownloadListActivity g1s3->g1s4 g1e3 CLICK menu_sort exec 5

汇合点子树:g1s4;不包含上游两个分支。

g16s70 → [g16e212; confirmed=1] → g1s4

g1s3 → [g1e3; confirmed=5] → g1s4

g1s2 / g1s3 → g1s4

G g16s70 g16s70 FormDownloadListActivity target ×90 g1s2 g1s2 FormDownloadListActivity target ×28 g16s70->g1s2 g16e232 CLICK add_button exec 1 g1s4 g1s4 FormDownloadListActivity g16s70->g1s4 g16e212 CLICK menu_sort exec 1 g1s1 g1s1 MainMenuActivity ROOT · source ×121 · target ×2 g1s1->g16s70 g16e248 CLICK name exec 1 g1s1->g1s2 g1e0 CLICK name exec 28 g1s2->g16s70 g16e233 CLICK button2 exec 2 g1s3 g1s3 FormDownloadListActivity g1s3->g1s4 g1e3 CLICK menu_sort exec 5

汇合点子树:g1s4;不包含上游两个分支。

g1s2 → [g16e233; confirmed=2] → g16s70 → [g16e212; confirmed=1] → g1s4

g1s3 → [g1e3; confirmed=5] → g1s4

删完入口仍可达的全部参考State路径

这些是聚合UTG路径;每条边的确认输入ID与次数见完整案例JSON。初始已不可达单列,不当作删边恢复。

original → g16s70
g1s1 → [g16e248; confirmed=1] → g16s70
still reachable after all observed confirmed entry edges cut

original → g16s71
g1s1 → [g16e248; confirmed=1] → g16s70 → [g16e214; confirmed=4] → g16s71
still reachable after all observed confirmed entry edges cut

original → g16s72
g1s1 → [g16e248; confirmed=1] → g16s70 → [g16e217; confirmed=2] → g16s72
still reachable after all observed confirmed entry edges cut

original → g16s73
g1s1 → [g16e248; confirmed=1] → g16s70 → [g16e217; confirmed=2] → g16s72 → [g16e218; confirmed=1] → g16s73
still reachable after all observed confirmed entry edges cut

original → g16s74
g1s1 → [g16e248; confirmed=1] → g16s70 → [g16e217; confirmed=2] → g16s72 → [g16e225; confirmed=1] → g16s74
still reachable after all observed confirmed entry edges cut

original → g1s2
g1s1 → [g16e248; confirmed=1] → g16s70 → [g16e232; confirmed=1] → g1s2
still reachable after all observed confirmed entry edges cut

original → g1s3
g1s1 → [g16e248; confirmed=1] → g16s70 → [g16e212; confirmed=1] → g1s4 → [g1e4; confirmed=3] → g1s3
still reachable after all observed confirmed entry edges cut

original → g1s4
g1s1 → [g16e248; confirmed=1] → g16s70 → [g16e212; confirmed=1] → g1s4
still reachable after all observed confirmed entry edges cut

original → g1s5
g1s1 → [g16e248; confirmed=1] → g16s70 → [g16e232; confirmed=1] → g1s2 → [g1e14; confirmed=1] → g1s5
still reachable after all observed confirmed entry edges cut

forward → g16s70
g1s1 → [g16e248; confirmed=1] → g16s70
still reachable after all observed confirmed entry edges cut

forward → g16s71
g1s1 → [g16e248; confirmed=1] → g16s70 → [g16e214; confirmed=4] → g16s71
still reachable after all observed confirmed entry edges cut

forward → g16s72
g1s1 → [g16e248; confirmed=1] → g16s70 → [g16e217; confirmed=2] → g16s72
still reachable after all observed confirmed entry edges cut

forward → g16s73
g1s1 → [g16e248; confirmed=1] → g16s70 → [g16e217; confirmed=2] → g16s72 → [g16e218; confirmed=1] → g16s73
still reachable after all observed confirmed entry edges cut

forward → g16s74
g1s1 → [g16e248; confirmed=1] → g16s70 → [g16e217; confirmed=2] → g16s72 → [g16e225; confirmed=1] → g16s74
still reachable after all observed confirmed entry edges cut

forward → g1s2
g1s1 → [g16e248; confirmed=1] → g16s70 → [g16e232; confirmed=1] → g1s2
still reachable after all observed confirmed entry edges cut

forward → g1s3
g1s1 → [g16e248; confirmed=1] → g16s70 → [g16e212; confirmed=1] → g1s4 → [g1e4; confirmed=3] → g1s3
still reachable after all observed confirmed entry edges cut

forward → g1s4
g1s1 → [g16e248; confirmed=1] → g16s70 → [g16e212; confirmed=1] → g1s4
still reachable after all observed confirmed entry edges cut

forward → g1s5
g1s1 → [g16e248; confirmed=1] → g16s70 → [g16e232; confirmed=1] → g1s2 → [g1e14; confirmed=1] → g1s5
still reachable after all observed confirmed entry edges cut

C发生参考:逐State GUI与范围身份

g16s70

A True / B原图 False / B去返回 False

g16s70代表图org.odk.collect.android.activities.FormDownloadListActivity
历史代表图,不认证同次对齐。
g16s71

A False / B原图 False / B去返回 False

g16s71代表图org.odk.collect.android.activities.FormDownloadListActivity
历史代表图,不认证同次对齐。
g16s72

A True / B原图 False / B去返回 False

g16s72代表图org.odk.collect.android.activities.FormDownloadListActivity
历史代表图,不认证同次对齐。
g16s73

A True / B原图 False / B去返回 False

g16s73代表图org.odk.collect.android.activities.FormDownloadListActivity
历史代表图,不认证同次对齐。
g16s74

A True / B原图 False / B去返回 False

g16s74代表图org.odk.collect.android.activities.FormDownloadListActivity
历史代表图,不认证同次对齐。
g1s2

A False / B原图 False / B去返回 False

g1s2代表图org.odk.collect.android.activities.FormDownloadListActivity
历史代表图,不认证同次对齐。
g1s3

A False / B原图 False / B去返回 False

g1s3代表图org.odk.collect.android.activities.FormDownloadListActivity
历史代表图,不认证同次对齐。
g1s4

A False / B原图 False / B去返回 False

g1s4代表图org.odk.collect.android.activities.FormDownloadListActivity
历史代表图,不认证同次对齐。
g1s5

A False / B原图 False / B去返回 False

g1s5代表图org.odk.collect.android.activities.FormDownloadListActivity
历史代表图,不认证同次对齐。

一条真实连续轨迹:完整步骤

入口 g16e211:325,停止:exit_to_outside。只连接同GUI、同抽象版本的相邻确认执行。

确认转换Source动作Target边界
g16e212:326g16s70MODEL_CLICK org.odk.collect.android:id/menu_sortg1s4core
g16e213:327g1s4MODEL_BACK g16s70core
g16e214:328g16s70MODEL_CLICK org.odk.collect.android:id/checkboxg16s71core
g16e215:329g16s71MODEL_CLICK org.odk.collect.android:id/refresh_buttong1s2core
g16e216:330g1s2MODEL_BACK g16s70core
g16e217:331g16s70MODEL_CLICK org.odk.collect.android:id/menu_filterg16s72core
g16e218:332g16s72MODEL_CLICK g16s73core
g16e219:333g16s73MODEL_CLICK org.odk.collect.android:id/checkboxg16s73core
g16e220:334g16s73MODEL_CLICK g16s72core
g16e221:335g16s72MODEL_CLICK g16s70core
g16e217:336g16s70MODEL_CLICK org.odk.collect.android:id/menu_filterg16s72core
g16e222:337g16s72MODEL_CLICK org.odk.collect.android:id/refresh_buttong16s72core
g16e223:338g16s72MODEL_CLICK org.odk.collect.android:id/toggle_buttong16s72core
g16e224:339g16s72MODEL_LONG_CLICK org.odk.collect.android:id/search_src_textg16s72core
g16e225:340g16s72MODEL_CLICK org.odk.collect.android:id/search_src_textg16s74core
g16e226:341g16s74MODEL_CLICK org.odk.collect.android:id/search_close_btng16s72core
g16e227:342g16s72MODEL_CLICK org.odk.collect.android:id/search_src_textg16s72core
g16e228:343g16s72MODEL_CLICK org.odk.collect.android:id/add_buttong16s72core
g16e229:344g16s72MODEL_CLICK org.odk.collect.android:id/checkboxg16s73core
g16e220:345g16s73MODEL_CLICK g16s72core
g16e221:346g16s72MODEL_CLICK g16s70core
g16e214:347g16s70MODEL_CLICK org.odk.collect.android:id/checkboxg16s71core
g16e230:348g16s71MODEL_CLICK g16s70core
g16e214:349g16s70MODEL_CLICK org.odk.collect.android:id/checkboxg16s71core
g16e231:350g16s71MODEL_CLICK org.odk.collect.android:id/toggle_buttong16s70core
g16e214:351g16s70MODEL_CLICK org.odk.collect.android:id/checkboxg16s71core
g16e230:352g16s71MODEL_CLICK g16s70core
g16e232:353g16s70MODEL_CLICK org.odk.collect.android:id/add_buttong1s2core
g1e1:354g1s2MODEL_BACK g1s2core
g16e233:355g1s2MODEL_CLICK android:id/button2g16s70core
g16e234:356g16s70MODEL_CLICK g16s71core
g16e235:357g16s71MODEL_BACK g1s1outside