evidence(hololake): accept updater bootstrap locally

This commit is contained in:
冰朔 2026-08-17 01:04:34 +08:00
commit 03a5115f75
4 changed files with 32 additions and 3 deletions

View file

@ -0,0 +1,28 @@
{
"schema": "hololake.updater-bootstrap-installed-acceptance/v1",
"recordId": "HLP-UPDATER-BOOTSTRAP-INSTALLED-20260817-001",
"observedAt": "2026-08-17T01:04:00+08:00",
"state": "SIGNED_LOCAL_BOOTSTRAP_RUNNING_PUBLIC_NO_UPDATE_CHECK_PASS_NOTARIZATION_PENDING",
"version": "0.4.1",
"sourceCommit": "23a0849d6b759639e3e55168810cad8f48023e58",
"installedApp": "/Users/bingshuolingdianyuanhe/Desktop/HoloLake.app",
"installer": "/Users/bingshuolingdianyuanhe/Desktop/HoloLake-0.4.1-Updater-Bootstrap-Apple-Silicon.dmg",
"bundleIdentifier": "world.guanghu.hololake",
"appleTeamIdentifier": "825A9L3G7Q",
"binarySha256": "5ced220dcd007732ce9506179eac9a4e3f4b70da016f8333a6efb4cffe551f32",
"updaterPackageSha256": "ce65736859c9da50653c9004c13f88e210dea915778663eeb063c6c599c753d7",
"dmgSha256": "7ddadf442c0ffcc0de65dd4dc03a21276a722841020b8ebab5e278adbd713f2d",
"updaterSignaturePresent": true,
"developerIdStrictVerification": "PASS",
"desktopProcessRunning": true,
"desktopUiReadback": "PASS_EXISTING_ACCOUNT_SYSTEM_VIEW",
"inAppUpdateCheck": "PASS_CURRENT_VERSION_IS_LATEST",
"publicReleaseEndpointStatus": 204,
"oldAppRecoveryPath": "/Users/bingshuolingdianyuanhe/.Trash/HoloLake-before-0.4.1-updater-bootstrap.app",
"notarization": {
"state": "NOT_SUBMITTED_NO_NOTARYTOOL_CREDENTIAL_FOUND",
"gatekeeperAssessment": "REJECTED_UNNOTARIZED_DEVELOPER_ID",
"stapledTicket": false,
"releaseActivationAllowed": false
}
}

View file

@ -7,7 +7,7 @@
"persona_relationship_gate": {"shows_species":"AGE","shows_current_persona_identity":true,"shows_invalid_age_individual_numbers":false,"human_confirms_relationship_mapping":true,"human_confirmation_is_persona_acceptance":false,"responsibility_acceptance_is_separate":true}, "persona_relationship_gate": {"shows_species":"AGE","shows_current_persona_identity":true,"shows_invalid_age_individual_numbers":false,"human_confirms_relationship_mapping":true,"human_confirmation_is_persona_acceptance":false,"responsibility_acceptance_is_separate":true},
"work_entry": {"domain":"DOMAIN-ZS","channel":"GUANGHU_CHANNEL","preserves_responsibility_domain":true}, "work_entry": {"domain":"DOMAIN-ZS","channel":"GUANGHU_CHANNEL","preserves_responsibility_domain":true},
"personal_route": {"separate_node_ownership_check":true,"enterprise_credentials_are_sufficient":false,"self_connection_guide_visible_in_zero_sense_domain":true,"connection_executor":"HUMAN_OR_OWN_PERSONA"}, "personal_route": {"separate_node_ownership_check":true,"enterprise_credentials_are_sufficient":false,"self_connection_guide_visible_in_zero_sense_domain":true,"connection_executor":"HUMAN_OR_OWN_PERSONA"},
"desktop_install_acceptance": {"mac_arm64":"BOOTSTRAP_REBUILD_REQUIRED","mac_x86_64":"NOT_BUILT","windows":"NOT_BUILT","automatic_update_channel":"BOOTSTRAP_TRUST_AND_PUBLIC_ENDPOINT_READY_NO_ACTIVE_RELEASE"}, "desktop_install_acceptance": {"mac_arm64":"SIGNED_LOCAL_BOOTSTRAP_PASS_NOTARIZATION_PENDING","mac_x86_64":"NOT_BUILT","windows":"NOT_BUILT","automatic_update_channel":"PUBLIC_CHECK_PASS_NO_ACTIVE_RELEASE"},
"ui_template": "REPO-012@27d34dfdbf5df4c67b805402d442e5912c8f4c31:official-login-template-v0.4-locked+inner-screens-v0.1", "ui_template": "REPO-012@27d34dfdbf5df4c67b805402d442e5912c8f4c31:official-login-template-v0.4-locked+inner-screens-v0.1",
"source": "routing/hololake-enterprise-four-domain-work-channel.json" "source": "routing/hololake-enterprise-four-domain-work-channel.json"
} }

View file

@ -55,6 +55,7 @@
"user_pncc_persona_binding_claimed": false, "user_pncc_persona_binding_claimed": false,
"local_runtime_acceptance_receipt": "audit/local-runtime-acceptance-20260815.json", "local_runtime_acceptance_receipt": "audit/local-runtime-acceptance-20260815.json",
"domain_membrane_pncc_installed_acceptance_receipt": "audit/hololake-0.4.0-domain-membrane-pncc-installed-acceptance-20260816.json", "domain_membrane_pncc_installed_acceptance_receipt": "audit/hololake-0.4.0-domain-membrane-pncc-installed-acceptance-20260816.json",
"updater_bootstrap_installed_acceptance_receipt": "audit/hololake-0.4.1-updater-bootstrap-installed-acceptance-20260817.json",
"installed_desktop_path": "/Applications/HoloLake.app", "installed_desktop_path": "/Applications/HoloLake.app",
"old_desktop_apps_recoverably_archived": true, "old_desktop_apps_recoverably_archived": true,
"public_developer_id_and_notarized_acceptance": false, "public_developer_id_and_notarized_acceptance": false,

View file

@ -62,10 +62,10 @@ test('the locked Qoder world template is the running client structure, not a ski
const frontend = read('src/main.tsx') const frontend = read('src/main.tsx')
assert.equal(contract.state, 'SERVER_LIVE_CLIENT_UI_INTEGRATED') assert.equal(contract.state, 'SERVER_LIVE_CLIENT_UI_INTEGRATED')
assert.match(contract.ui_template, /official-login-template-v0\.4-locked\+inner-screens-v0\.1/) assert.match(contract.ui_template, /official-login-template-v0\.4-locked\+inner-screens-v0\.1/)
assert.equal(contract.desktop_install_acceptance.mac_arm64, 'BOOTSTRAP_REBUILD_REQUIRED') assert.equal(contract.desktop_install_acceptance.mac_arm64, 'SIGNED_LOCAL_BOOTSTRAP_PASS_NOTARIZATION_PENDING')
assert.equal(contract.desktop_install_acceptance.mac_x86_64, 'NOT_BUILT') assert.equal(contract.desktop_install_acceptance.mac_x86_64, 'NOT_BUILT')
assert.equal(contract.desktop_install_acceptance.windows, 'NOT_BUILT') assert.equal(contract.desktop_install_acceptance.windows, 'NOT_BUILT')
assert.equal(contract.desktop_install_acceptance.automatic_update_channel, 'BOOTSTRAP_TRUST_AND_PUBLIC_ENDPOINT_READY_NO_ACTIVE_RELEASE') assert.equal(contract.desktop_install_acceptance.automatic_update_channel, 'PUBLIC_CHECK_PASS_NO_ACTIVE_RELEASE')
assert.match(frontend, /number-nucleus/) assert.match(frontend, /number-nucleus/)
assert.match(frontend, /worldStage === 'domain'/) assert.match(frontend, /worldStage === 'domain'/)
assert.match(frontend, /worldStage === 'channel'/) assert.match(frontend, /worldStage === 'channel'/)