feat(desktop): show current relay-authenticated binding status - #4987
Draft
cea-block wants to merge 3 commits into
Draft
feat(desktop): show current relay-authenticated binding status#4987cea-block wants to merge 3 commits into
cea-block wants to merge 3 commits into
Conversation
cea-block
force-pushed
the
cea/o5-durable-audit-operator-lifecycle-4941806
branch
from
August 9, 2026 12:34
42bf4c4 to
29506f8
Compare
cea-block
force-pushed
the
cea/j3c-current-binding-status
branch
from
August 9, 2026 12:34
b042940 to
5b6578b
Compare
cea-block
added a commit
that referenced
this pull request
Aug 10, 2026
Cumulative PR layer #4987. Installs the native and desktop current-binding status consumer while preserving the lower verified-profile presentation. Neighbor disclosure: the core status contract remains owned by #4790 and relay runtime remains owned by #4847; this layer adds connection-scoped status without replacing the lower verified-profile pipeline. Signed-off-by: Cea Stapleton Cordasco <261786559+cea@users.noreply.github.com>
cea-block
force-pushed
the
cea/o5-durable-audit-operator-lifecycle-4941806
branch
from
August 10, 2026 22:53
29506f8 to
b58106b
Compare
cea-block
force-pushed
the
cea/j3c-current-binding-status
branch
from
August 10, 2026 22:53
5b6578b to
4612eab
Compare
cea-block
added a commit
that referenced
this pull request
Aug 11, 2026
Cumulative PR layer #4987. Installs the reviewed native and desktop current-binding status consumer, reconciles public dependency locks, preserves provider application, retires profile-derived trust presentation, and co-commits exact WebSocket operations with stable same-actor status sessions. Neighbor disclosure: the core status contract remains owned by #4790 and relay production remains owned by #4847; this layer intentionally retires the legacy profile presentation replaced by connection-scoped status. Signed-off-by: Cea Stapleton Cordasco <261786559+cea@users.noreply.github.com>
cea-block
force-pushed
the
cea/o5-durable-audit-operator-lifecycle-4941806
branch
from
August 11, 2026 12:35
b58106b to
c8a9ea0
Compare
cea-block
force-pushed
the
cea/j3c-current-binding-status
branch
from
August 11, 2026 12:35
4612eab to
88af04d
Compare
cea-block
added a commit
that referenced
this pull request
Aug 11, 2026
Cumulative PR layer #4987. Installs the reviewed native and desktop current-binding status consumer, reconciles public dependency locks, preserves provider application, retires profile-derived trust presentation, and co-commits exact WebSocket operations with stable same-actor status sessions. Neighbor disclosure: the core status contract remains owned by #4790 and relay production remains owned by #4847; this layer intentionally retires the legacy profile presentation replaced by connection-scoped status. Signed-off-by: Cea Stapleton Cordasco <261786559+cea@users.noreply.github.com>
cea-block
force-pushed
the
cea/o5-durable-audit-operator-lifecycle-4941806
branch
from
August 11, 2026 15:03
c8a9ea0 to
49c061f
Compare
cea-block
force-pushed
the
cea/j3c-current-binding-status
branch
2 times, most recently
from
August 11, 2026 17:04
4c6ebb6 to
5a3dd92
Compare
cea-block
added a commit
that referenced
this pull request
Aug 11, 2026
Cumulative PR layer #4987. Installs the reviewed native and desktop current-binding status consumer, reconciles public dependency locks, preserves provider application, retires profile-derived trust presentation, and co-commits exact WebSocket operations with stable same-actor status sessions. Neighbor disclosure: the core status contract remains owned by #4790 and relay production remains owned by #4847; this layer intentionally retires the legacy profile presentation replaced by connection-scoped status. Signed-off-by: Cea Stapleton Cordasco <261786559+cea@users.noreply.github.com>
cea-block
force-pushed
the
cea/o5-durable-audit-operator-lifecycle-4941806
branch
from
August 11, 2026 17:04
49c061f to
1b2289f
Compare
cea-block
added a commit
that referenced
this pull request
Aug 11, 2026
Cumulative PR layer #4987. Installs the reviewed native and desktop current-binding status consumer, reconciles public dependency locks, preserves provider application, retires profile-derived trust presentation, and co-commits exact WebSocket operations with stable same-actor status sessions. Neighbor disclosure: the core status contract remains owned by #4790 and relay production remains owned by #4847; this layer intentionally retires the legacy profile presentation replaced by connection-scoped status. Signed-off-by: Cea Stapleton Cordasco <261786559+cea@users.noreply.github.com>
cea-block
force-pushed
the
cea/o5-durable-audit-operator-lifecycle-4941806
branch
from
August 11, 2026 17:33
1b2289f to
761140e
Compare
cea-block
force-pushed
the
cea/j3c-current-binding-status
branch
from
August 11, 2026 17:33
5a3dd92 to
1d8ea57
Compare
cea-block
added a commit
that referenced
this pull request
Aug 11, 2026
Cumulative PR layer #4987. Installs the reviewed native and desktop current-binding status consumer, reconciles public dependency locks, preserves provider application, retires profile-derived trust presentation, and co-commits exact WebSocket operations with stable same-actor status sessions. Neighbor disclosure: the core status contract remains owned by #4790 and relay production remains owned by #4847; this layer intentionally retires the legacy profile presentation replaced by connection-scoped status. Signed-off-by: Cea Stapleton Cordasco <261786559+cea@users.noreply.github.com>
cea-block
force-pushed
the
cea/o5-durable-audit-operator-lifecycle-4941806
branch
from
August 11, 2026 18:10
761140e to
5e6ca74
Compare
cea-block
force-pushed
the
cea/j3c-current-binding-status
branch
from
August 11, 2026 18:10
1d8ea57 to
736497f
Compare
Cumulative PR layer #4987. Installs the reviewed native and desktop current-binding status consumer, reconciles public dependency locks, preserves provider application, retires profile-derived trust presentation, and co-commits exact WebSocket operations with stable same-actor status sessions. Neighbor disclosure: the core status contract remains owned by #4790 and relay production remains owned by #4847; this layer intentionally retires the legacy profile presentation replaced by connection-scoped status. Signed-off-by: Cea Stapleton Cordasco <261786559+cea@users.noreply.github.com>
…file-size gate Signed-off-by: Cea Stapleton Cordasco <261786559+cea@users.noreply.github.com>
cea-block
force-pushed
the
cea/o5-durable-audit-operator-lifecycle-4941806
branch
from
August 12, 2026 01:13
5e6ca74 to
5446360
Compare
cea-block
force-pushed
the
cea/j3c-current-binding-status
branch
from
August 12, 2026 01:13
736497f to
2d48ffb
Compare
Signed-off-by: Cea Stapleton Cordasco <261786559+cea@users.noreply.github.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Why
The desktop should present trust from the relay-authenticated current binding status associated with its active connection. Profile metadata and NIP-85-derived names are not connection-scoped authority and can outlive a withdrawal, expiry, reconnect, or binding change.
This PR follows #4847 and adds the desktop consumer for the current-binding status protocol introduced earlier in the stack.
What changed
Desktop run-event lifecycle handling is organized in a dedicated behavior-neutral module.
Risk boundary
The projection is current-connection state, not durable identity state. It is cleared whenever its authenticated scope or freshness cannot be established, and it is never restored from profile metadata. The stock relay still installs no deployment-specific authorization provider, and this change does not enable protected behavior, operator routes, or external identity policy.
Delivery limitation
Status and moderation delivery is durable and crash-recoverable with at-least-once semantics, and clients deduplicate redeliveries.
Moderation commit-to-dispatch is in-process at-most-once: delivery records are crash-recoverable, but external moderation side effects are not replayed after a crash.
Validation
badge.spec.tsemits current-binding projections through the mock bridge and verifies exact-author display plus fail-closed rejection of malformed projection shapesGenerated with Codex.