P16-01-DISMISS: 一般従業員の通常操作での解雇(退職金を含む。P16-01 の補助の作業。原単位への加算 0)

This commit is contained in:
Agent Control Runner
2026-10-25 14:45:45 +09:00
parent b06fec17c7
commit a073ccb59b
10 changed files with 668 additions and 127 deletions
+19
View File
@@ -209,6 +209,25 @@ func new_event_fixture(seed: int) -> Dictionary:
return fixture
## A foreground Event of two employees whose missing actor policy continues without
## the missing one (CONTINUE_WITHOUT).
func new_event_pair_fixture(seed: int) -> Dictionary:
var fixture := new_fixture(seed)
var runtime: Variant = fixture[&"runtime"]
for staff_id: StringName in [&"event_lead", &"event_partner"]:
check(command(fixture, &"register_staff", {&"staff_id": staff_id, &"role_id": &"service", &"options": {&"daily_wage": 80}}).is_success(), "register %s" % staff_id)
check(command(fixture, &"register_event_definition", {&"definition": {&"event_id": &"p16.event.pair", &"category": &"RELATIONSHIP", &"priority": 70,
&"foreground": true, &"transaction_policy": &"ROLLBACK_ALL", &"missing_actor_policy": &"CONTINUE_WITHOUT", &"content_rating": &"GENERAL",
&"choices": [{&"choice_id": &"wait", &"text_key": &"event.p16.pair.wait", &"actions": []}]}}).is_success()
and command(fixture, &"enqueue_event", {&"event_id": &"p16.event.pair", &"actor_ids": [&"event_lead", &"event_partner"],
&"options": {&"event_instance_id": &"p16.event.pair.instance"}}).is_success(), "a two-actor Event that continues without a missing actor")
fixture[&"clock"].set_paused(false)
fixture[&"clock"].advance_one_minute()
fixture[&"clock"].set_paused(true)
check(runtime.event_service.get_actor_locks().has(&"event_partner"), "the Event locks both employees")
return fixture
## Live references to a removed employee (SPEC 6.2/6.2.1): live Tasks, elevator
## trips, the path actor, facility staffing, Event locks and running Event actors.
## Terminal Task records keep their history.