fix(recovery): silence clean equipment arrival warnings #18

Merged
dmg merged 1 commits from ticket-402-avoid-false-recovery-warnings-after-clean-equipment-exits into main 2026-10-17 05:51:41 +00:00
Owner

Summary

  • suppress the false recovery warning only when a well-formed RESTORED marker exactly matches the completed last-exit receipt
  • preserve marker, receipt history, inventory, cursor, character data, and inactive session state
  • retain recovery warnings and nonmutation for malformed, mismatched, non-restored markers and genuine Fantasy Stick remnants

OpenProject: https://project.dmg.games/work_packages/402

Verification

  • meaningful RED: registered PlayerJoinEvent clean-exit test expected zero notices and observed one NATIVE_RECOVERY_REQUIRED
  • focused GREEN: 2/2 clean/unsafe login-path tests
  • affected GREEN: 158/158 EquipmentSessionsNativeTest and EquipmentSessionEventsNativeTest checks
  • full branch gate: ./gradlew clean check jar — 2,539 checks passed (489 ordinary Java, 1,995 native, 55 release-tool)
  • tested commit: a2140bd8d7ce9f9036032e137f047cb8321936df
  • tested tree: 553d2047ec718c22b1d654575a50a7a7d7d58873
  • target base: 7ea6e254eb5a77ab91633a5d1bfa8047ea9e28f5
  • frozen inputs: 666 tracked files; manifest SHA-256 1750349e9595f860a5894ec5b9fd42e69652fd684528f7192fea5a23422f3bcc

Retained evidence: the initial baseline and first changed-tree full runs each exposed a different unrelated timing-sensitive event-export failure; each exact failing test passed immediately in isolation. No source changed before the bounded renewed full clean gate passed.

Delivery effects

Merging to main triggers the existing semantic-release workflow and is expected to publish a patch release. No GitOps, deployment, live-server, configuration, dependency, CI, or tooling change is included.

## Summary - suppress the false recovery warning only when a well-formed `RESTORED` marker exactly matches the completed last-exit receipt - preserve marker, receipt history, inventory, cursor, character data, and inactive session state - retain recovery warnings and nonmutation for malformed, mismatched, non-restored markers and genuine Fantasy Stick remnants OpenProject: https://project.dmg.games/work_packages/402 ## Verification - meaningful RED: registered `PlayerJoinEvent` clean-exit test expected zero notices and observed one `NATIVE_RECOVERY_REQUIRED` - focused GREEN: 2/2 clean/unsafe login-path tests - affected GREEN: 158/158 `EquipmentSessionsNativeTest` and `EquipmentSessionEventsNativeTest` checks - full branch gate: `./gradlew clean check jar` — 2,539 checks passed (489 ordinary Java, 1,995 native, 55 release-tool) - tested commit: `a2140bd8d7ce9f9036032e137f047cb8321936df` - tested tree: `553d2047ec718c22b1d654575a50a7a7d7d58873` - target base: `7ea6e254eb5a77ab91633a5d1bfa8047ea9e28f5` - frozen inputs: 666 tracked files; manifest SHA-256 `1750349e9595f860a5894ec5b9fd42e69652fd684528f7192fea5a23422f3bcc` Retained evidence: the initial baseline and first changed-tree full runs each exposed a different unrelated timing-sensitive event-export failure; each exact failing test passed immediately in isolation. No source changed before the bounded renewed full clean gate passed. ## Delivery effects Merging to `main` triggers the existing semantic-release workflow and is expected to publish a patch release. No GitOps, deployment, live-server, configuration, dependency, CI, or tooling change is included.
dmg added 1 commit 2026-10-17 05:50:19 +00:00
fix(recovery): silence clean equipment arrival warnings
CI / build (push) Successful in 58s
CI / build (pull_request) Successful in 1m1s
a2140bd8d7
dmg merged commit b3473aff18 into main 2026-10-17 05:51:41 +00:00
Sign in to join this conversation.
No Reviewers
No labels
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: dmg/purpur-fantasy-stick#18