Skip to content

[finding] HotReloadConfig.stateStrategy 'disk'/'distributed' are silent memory fallbacks, and distributedConfig has zero readers — declared≠enforced inside the KEPT host-driven library #12340

Description

@os-litant

Origin: measured during #11825's per-group consumer audit (base 8cdd696) by the os-dev run for PR #12336. Filed by the PM on the dev's behalf (recording only — unassigned, awaiting triage).

Dev's measurement, verbatim draft: "packages/core/src/hot-reload.ts PluginStateManager.saveState: the 'disk' and 'distributed' switch arms both write to the in-memory store ('memory fallback' comments in-source), and DistributedStateConfigSchema (carried on HotReloadConfig.distributedConfig) is read by nothing. An author passing stateStrategy: 'disk' to HotReloadManager gets memory persistence and no error."

Scope note: deliberately kept as-is in PR #12336 — the 2026-08-25 ruling on #11825 keeps the classes unchanged as a host-driven library, and the honest-status caveat already exists in PLUGIN_STANDARDS.md §5.1. This card records the declared≠enforced remainder inside that kept library (PD #10 shape, library-parameter form rather than authorable-surface form).

Options when triaged: implement the two arms, or narrow the stateStrategy enum + retire distributedConfig via a follow-up enforce-or-remove card.

Dedup (searched 2026-08-25): no open or closed card covers this (sole distant hit #3433 is a different subsystem, closed).

Metadata

Metadata

Assignees

Type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions