Skip to content

net-controller: preserve fresh status during WebSocket replacement - #779

Closed
Patrick W. Healy (phealy) wants to merge 1 commit into
phealy/lightweight-status-legacy-detail-storefrom
phealy/lightweight-status-ws-source-ownership
Closed

Patrick W. Healy (phealy) wants to merge 1 commit into
phealy/lightweight-status-legacy-detail-storefrom
phealy/lightweight-status-ws-source-ownership

Conversation

@phealy

@phealy Patrick W. Healy (phealy) commented Sep 16, 2026

Copy link
Copy Markdown
Contributor

Scope

Stacked on #778. Uses connection and transport ownership when marking disconnected status stale, so old teardown cannot overwrite a replacement WebSocket or a newer HTTP publication. Completes the connection-lifecycle safeguards used by diagnostic fallback.

Small targeted layer, below 1,000 additions-plus-deletions. No default change.

Validation

Full controller race tests and scoped formatting/lint passed. Added explicit replacement, HTTP fallback, and immutable-snapshot source tests.

Lightweight status draft stack

Base: #745. Each layer targets the preceding branch and remains draft.

#746 -> #747 -> #748 -> #750 -> #751 -> #752 -> #753 -> #754 -> #755 -> #756 -> #757 -> #758 -> #759 -> #760 -> #761 -> #762 -> #763 -> #764 -> #765 -> #766 -> #767 -> #768 -> #769 -> #770 -> #771 -> #772 -> #773 -> #774 -> #775 -> #776 -> #777 -> #778 -> #779 -> #780 -> #781 -> #782 -> #783 -> #784 -> #785 -> #786 -> #787 -> #788 -> #789 -> #790 -> #791 -> #792 -> #793 -> #794 -> #795 -> #796 -> #797 -> #798 -> #799

…rdown

Only the current connection may mark its own transport stale. Do not overwrite a replacement connection or a newer HTTP publication, and preserve immutable cached snapshots.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: d2243398-6c36-4c3d-969e-7ed7bfb5b459
This was referenced Sep 16, 2026
This was referenced Sep 16, 2026
@phealy

Copy link
Copy Markdown
Contributor Author

This PR was mistaken churn from splitting the lightweight-status work into unnecessarily small PRs. That was my mistake, not a requirement from the user.

Its changes are preserved in #762 within the user-approved, consolidated 12-PR draft stack. Closing this superseded PR; the implementation is not being discarded, and nothing has been merged into main.

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