Skip to content

Add shared mod state store - #267

Open
Guffawaffle wants to merge 4 commits into
netniV:devfrom
Guffawaffle:feature/mod-state
Open

Guffawaffle wants to merge 4 commits into
netniV:devfrom
Guffawaffle:feature/mod-state

Conversation

@Guffawaffle

@Guffawaffle Guffawaffle commented Sep 4, 2026 •

Copy link
Copy Markdown
Contributor

Adds a shared JSON store for durable mod-owned preferences.

Cross-process file locks serialize read-modify-write transactions, preserving unrelated state fields. Callers can retry for the lock or attempt an immediate update. Writes use atomic replacement, and unsupported schema versions reject reads and updates.

The default profile uses community_patch_state.json; custom config profiles use sibling state files. This provides shared storage for features such as local officer-preset ordering.

@Guffawaffle

Copy link
Copy Markdown
Contributor Author

The consumer restack review exposed a schema-boundary issue in the shared helper, now corrected at 59f48e2: unsupported future/invalid versions are rejected on both reads and writes, and callbacks cannot remove or alter the reserved version field. Three independent correction lanes passed receipt 36ed6b5f7ab4; the remaining gap is a focused automated version-fixture matrix.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant