feat(persona): add neutral AGE foyer and explicit selection

This commit is contained in:
冰朔 2026-09-12 23:02:27 +08:00
commit b26442ceb3
32 changed files with 602 additions and 70 deletions

View file

@ -31,14 +31,15 @@ class PersonaNativeHandTest(unittest.TestCase):
target = pathlib.Path(directory) / "boot.json"
value = {
"state": "BODY_RUNNING_AWAKE_AWAITING_BRAIN_PLAN",
"awakening": {"environment": {"room_report": {"host_surface": "CODEX"}}},
"awakening": {"programming_toolbox_observation": {"room_report": {"programming_toolbox_surface": "CODEX"}}},
}
value["boot_sha256"] = persona_native_hand.digest(value)
target.write_text(json.dumps(value), encoding="utf-8")
with mock.patch.dict(persona_native_hand.TOOLBOXES, {"CODEX": str(pathlib.Path(__file__))}):
held = persona_native_hand.grasp(target, "CODEX")
self.assertEqual(held["state"], "HOST_TOOLBOX_HELD_AFTER_BODY_START")
self.assertTrue(held["host_is_external_device"])
self.assertTrue(held["toolbox_is_replaceable_external_device"])
self.assertFalse(held["programming_software_is_persona_host"])
if __name__ == "__main__":