Skip to content

Port the behaviour behind nip77, peering, subscription plans and the probe/SSL notifications #1036

Open

Description

@chappie-daemon

Follow-up to the 2026-11-02 sync of main into rewrite/main (#1035).

Corrected scope: the settings are modelled now. The first version of this issue said the surfaces were unmodelled; that was wrong for this branch. e6deb14 adds nip77, peering, payments.subscriptionPlans, nip66.historyRetention* and the three probe/SSL notification toggles to the Rust schema so the defaults document round-trips and validates. What is missing is what those settings do:

surface modelled behaviour on this branch
NIP-77 negentropy sync yes none: no handler, and the guided editor still has no category (deferred_nip77_surface_is_not_modelled)
relay peering yes none: no NIP-11 peering section, no NIP-42 peer matching
recurring membership plans yes none: the admission fee is still one-time
probe history retention yes none: nip66 probes keep everything
probe/SSL notification events yes the five original toggles are emitted; probe.failed, probe.recovered, ssl.expiring never fire

So a configuration that sets any of these today is accepted and does nothing, which is exactly the state a toggle with no emitter leaves. Each is a port of the TypeScript implementation that came over with the merge (src/handlers/neg-*-message-handler.ts, src/utils/peering-auth.ts, src/utils/ops-trust-notifications.ts).

Land the behaviour with the setting, not after it.

Activity

  1. changed the title [-]Port main's nip77, peering, subscription plans and probe/SSL notification toggles to the rewrite[/-] [+]Port the behaviour behind nip77, peering, subscription plans and the probe/SSL notifications[/+] on Nov 2, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions