feat: admit numbered iPhone companion

This commit is contained in:
冰朔 2026-08-19 07:28:26 +08:00
commit fe1aaade0e
20 changed files with 1563 additions and 7 deletions

View file

@ -0,0 +1,49 @@
{
"schema": "hololake.ios-mobile-client.contract/v1",
"record_id": "HLP-IOS-CLIENT-001",
"state": "NUMBERED_SOURCE_SIMULATOR_AND_DEVELOPMENT_SIGNED_IPA_ACCEPTED",
"role": "REMOTE_BODY_ENTRY_OF_THE_SAME_PERSONA_SYSTEM",
"root_node": "USER_LOCAL_COMPUTER_TERMINAL",
"numbered_transport": {
"desktop_module": "HLP-MOD-OFFICIAL-MOBILE-SYNC-0001",
"desktop_route_family": "HLP-NIPC-MOD-0030/HLP-NIPC-OP-0141..0146/HLP-NIPC-TGT-0030",
"wire_schema": "hololake.mobile-sync/v1",
"client_number": "HLP-IOS-CLIENT-001",
"unregistered_route_access": "FAIL_CLOSED"
},
"security": {
"pairing": "CHACHA20_POLY1305_ONE_TIME_SECRET",
"session": "CHACHA20_POLY1305_STRICT_COUNTER",
"key_storage": "KEYCHAIN_WHEN_UNLOCKED_THIS_DEVICE_ONLY",
"local_network_only": true,
"background_polling": false,
"remote_desktop_clone": false,
"desktop_offline_execution": false
},
"interface": {
"framework": "SWIFTUI",
"visual_family": "HOLOLAKE_TRADITIONAL_SURFACE_MOBILE_ADAPTATION",
"idle_state": "STATIC",
"manual_sync_only": true,
"pairing_entry": ["CUSTOM_URL_SCHEME", "PASTEBOARD"],
"projections": ["CHANNEL_INTEGRITY", "WEB_NOVEL_COUNTS_AND_WORKS", "EDUCATION_COUNTS", "BOUNDED_CAPTURE"]
},
"acceptance": {
"simulator_build": "PASS_SIGNED_LOCAL_SIMULATOR_IPHONE_17_PRO_IOS_26_5",
"simulator_visual_inspection": "PASS_PAIRING_AND_NUMBER_BOUNDARY_SURFACE_IDLE_STATIC",
"unit_tests": "PASS_4",
"development_signed_device_archive": "PASS_APPLE_DEVELOPMENT_TEAM_825A9L3G7Q",
"debugging_ipa_export": "PASS",
"version": "0.5.0",
"build": "1",
"bundle_identifier": "com.guanghulab.hololake",
"xcode": "26.6_17F113",
"archive_application_binary_sha256": "7021c9cde2f7bdf01cda6200669be528a58d27ef41adbd3d58d7135ff7245702",
"archive_application_cdhash": "11ae3a8ac0d761e4d4b4de229dbb19291de29e03",
"debugging_ipa_sha256": "a6b505e1a7dc10febd831a540396bb9530f78bb2429d258962f0250e5597b1f0",
"provisioning_profile_uuid": "fe5fe72c-4826-4e19-9672-d9868cc4491e",
"provisioning_profile_expires": "2027-07-19",
"desktop_delivery_path": "/Users/bingshuolingdianyuanhe/Desktop/HoloLake-iPhone-0.5.0-Development.ipa",
"real_iphone_pair_and_sync": "NOT_CLAIMED"
}
}

View file

@ -65,12 +65,12 @@
},
"client_scope": {
"desktop_bridge": "IN_THIS_ADMISSION",
"ios_application_source": "NOT_IN_DECLARED_DONOR_CANDIDATE",
"ios_installable_package": "PENDING_SEPARATE_ADMISSION",
"ios_application_source": "SEPARATELY_ADMITTED_AT_MOBILE_IOS_WITH_HLP_IOS_CLIENT_001",
"ios_installable_package": "DEVELOPMENT_SIGNED_DEBUGGING_IPA_EXPORTED",
"claim_real_iphone_end_to_end_accepted": false
},
"current_acceptance": {
"state": "PASS_DESKTOP_BRIDGE_ONLY",
"state": "PASS_DESKTOP_BRIDGE_AND_SEPARATELY_ADMITTED_IOS_CLIENT_ARTIFACT",
"module_package_sha256": "61a9d402c936d7477609bcfa6eb4ad6e83cb6c089ba51b3db09a2d6259185924",
"module_package_signature": "PASS_EMBEDDED_PRODUCT_TRUST",
"signed_app_binary_sha256": "9be06d6c5dbd4f46f6f925142d633f12b42ee553873c2342f9804bcf39dde7b4",
@ -84,7 +84,10 @@
"desktop_listener": "PASS_EXPLICIT_START_REACHABLE_STATUS_AND_EXPLICIT_STOP",
"restart_restore": "PASS_ACTIVE_MODULE_RESTORED_LISTENER_OFFLINE",
"legacy_account_readback": "PASS_ONE_PAIRED_DEVICE_ONE_ISOLATED_CAPTURE_RETAINED",
"live_iphone_pairing_this_cycle": "NOT_CLAIMED",
"ios_client_contract": "contracts/ios-mobile-client-v1.json",
"ios_client_source_build_and_simulator": "PASS",
"ios_development_signed_ipa": "PASS_SHA256_a6b505e1a7dc10febd831a540396bb9530f78bb2429d258962f0250e5597b1f0",
"live_iphone_pairing_this_cycle": "NOT_CLAIMED_NO_PHYSICAL_DEVICE_USED",
"notarization": "FINAL_RELEASE_CANDIDATE_PENDING"
}
}

View file

@ -1,7 +1,7 @@
{
"schema": "hololake.module-donor-admission-registry/v1",
"record_id": "HLP-MODULE-DONOR-ADMISSION-001",
"state": "SEVEN_CANDIDATES_ADMITTED_DONOR_SOURCES_REMAIN_READ_ONLY",
"state": "EIGHT_CANDIDATES_ADMITTED_DONOR_SOURCES_REMAIN_READ_ONLY",
"root_rule": {
"official_base": "HOLOLAKE_0.5.0_NUMBERED_IPC_ROOT",
"repair_old_application_in_place": false,
@ -160,7 +160,7 @@
"runtime_module_number": "HLP-MOD-OFFICIAL-MOBILE-SYNC-0001",
"numbered_ipc_module": "HLP-NIPC-MOD-0030",
"acceptance_evidence": "contracts/mobile-sync-v1.json#current_acceptance",
"boundary": "DESKTOP_ROOT_NODE_SAME_LAN_BRIDGE_ONLY; EXPLICIT_LISTENER; IOS_INSTALLABLE_PACKAGE_PENDING_SEPARATE_ADMISSION; NO_SECOND_PERSONA_SYSTEM"
"boundary": "DESKTOP_ROOT_NODE_SAME_LAN_BRIDGE_ONLY; EXPLICIT_LISTENER; IOS CLIENT REQUIRES SEPARATE NUMBERED ADMISSION; NO_SECOND_PERSONA_SYSTEM"
},
{
"admission_order": 7,
@ -180,6 +180,23 @@
"numbered_ipc_module": "HLP-NIPC-MOD-0031",
"acceptance_evidence": "contracts/dynamic-language-world-visual-system.json#current_acceptance",
"boundary": "QODER_LOCKED_VISUAL_SOURCE_PLUS_REALITY_TIME_AND_PUBLIC_WEATHER_PROJECTION; ALL_FUNCTION_ROUTES_REMAIN_NUMBERED; IDLE_STATIC; NO_FAKE_WEATHER_BROADCAST_OR_METRICS"
},
{
"admission_order": 8,
"candidate_number": "HLP-DONOR-CAND-0008",
"name": "ios_numbered_remote_body_entry",
"state": "ADMITTED_SOURCE_SIMULATOR_AND_DEVELOPMENT_SIGNED_IPA_ACCEPTED",
"paths": [
"contracts/ios-mobile-client-v1.json",
"mobile/ios/project.yml",
"mobile/ios/Sources",
"mobile/ios/Tests"
],
"client_number": "HLP-IOS-CLIENT-001",
"desktop_runtime_module_number": "HLP-MOD-OFFICIAL-MOBILE-SYNC-0001",
"numbered_ipc_module": "HLP-NIPC-MOD-0030",
"acceptance_evidence": "contracts/ios-mobile-client-v1.json#acceptance",
"boundary": "IPHONE IS A THIN REMOTE BODY ENTRY; DESKTOP REMAINS ROOT NODE; SAME LAN EXPLICIT PAIR AND MANUAL SYNC ONLY; NO SECOND PERSONA SYSTEM; REAL IPHONE END TO END NOT CLAIMED"
}
],
"admission_gate": [