Files
TheTree_mock/docs/plans/original-completion-2026-09-29/execution/UNIQUE_EMPLOYMENT_PROTECTION.md
T
Takeshi 5dde0c5ec2 Record original-alignment implementation and traceability checkpoint
Capture current source, content data, tests, asset licenses, and original-specification traceability. Original implementation remains incomplete. The accepted matching UI generation passed 154 suites and 12,253 checks, with eight rendered staff-contract screens reviewed. Latest native Windows and full-original acceptance remain outstanding.
2026-09-30 23:52:24 +09:00

2.8 KiB
Raw Blame History

ユニーク従業員の原本6.1保護

P17 部分実装。従来は EmploymentKind.UNIQUE でも remove_staff/retire_staff が成功し、daily_wage が正なら給与が発生していた。原本「維持費無料・解雇売却不可」に反する。

remove_staff と retire_staff の入口で UNIQUE を拒否し、作業の再開放・シフト削除・退職フラグ・未払い移管より前に停止する。理由のラベルを変えて削除を迂回できない。物語上の一時離脱は人物を恒久削除するこの API で代用しない。

StaffRuntime.get_effective_daily_wage() を追加し UNIQUE の新規給与を0とする。給与一覧、支払義務、日次精算、管理UI用 Runtime report に適用した。保存済み daily_wage や過去未払いは書き換えず、既存セーブの正確な往復と過去会計を保持する。過去の誤請求を自動返金・消去する移行ではない。

検証: StaffService209、従業員UI87、通常開業から翌日決算・保存再生59項目 PASS。追加13項目で削除理由3種、退職失敗時の全snapshot不変、旧非ゼロ給与の復元、既存未払い25のみの精算、二重精算防止、翌日の追加債務0を確認。旧テストが UNIQUE 日給75を期待していた箇所も原本の実効給与0へ修正した。一般従業員の退職・未払い保持の既存試験は継続してPASS。

証拠: artifacts/facility-dimensions-2026-09-29/unique-employment-validation.json と同接頭辞ログ。

残件: 通常プレイへのユニーク加入導線、雇用時の無料契約、原本全7名、配属と固有効果、成長、物語上の一時離脱、Windows受入。UI試験は既存一般従業員の回帰であり、未実装のユニーク加入を操作できたとは扱わない。

Runtime 接続の追加検証と登録迂回の防止

一般 register_staff は既存一般候補IDを拒否する一方、ユニークのカタログIDを任意の FREE_HIRE として登録できた。Runtime入口の予約IDチェックにユニーク一覧も加え、アンリ/ライの本人IDを正規加入経路以外で偽装登録できないようにした。今後の加入コマンドは検証済みの専用契約を使う。

Runtime content/progression116項目 PASS。追加分は予約ユニークIDの登録拒否と従業員/会計不変、汎用 UNIQUE fixture のコマンド登録、管理画面用の日給0表示、退職拒否時の全Runtime snapshot不変、保存復元後の保護を確認する。fixture は加入条件を仮定しないテストIDであり、アンリの通常加入UIが完成した証拠ではない。証拠は unique-runtime-protection-validation.json と .log。ユーザーが別途承認した通常加入/料金方式は ANRI_APPROVED_INTEGRATION.md に保存した。