Skip to content

NAP-NN: Topic payload semantics over IFC - #20

Closed
dskvr wants to merge 1 commit into
masterfrom
nub-topic-payload-semantics
Closed

NAP-NN: Topic payload semantics over IFC#20
dskvr wants to merge 1 commit into
masterfrom
nub-topic-payload-semantics

Conversation

@dskvr

@dskvr dskvr commented May 25, 2026

Copy link
Copy Markdown
Contributor

Summary

  • Adds NAP-NN-TOPIC-PAYLOADS.md, a provisional NAP-NN draft for IFC-carried topic payload semantics.
  • Updates the README draft table to list the new profile/chat/stream topic payload protocol.

Why

NAP-IFC defines the generic inter-frame transport: ifc.emit, ifc.subscribe,
ifc.unsubscribe, and ifc.event. It does not define what a topic such as
profile:open means.

This PR makes those topic payloads public napplet-agreed semantics instead of
leaving them as implementation-local conventions.

Spec / API surface

The draft defines payload and producer/consumer behavior for:

  • profile:open
  • chat:open-dm
  • livestream:channel-switch
  • stream:current-context-get
  • stream:current-context

The draft references NAP-IFC as the carrier and does not redefine IFC envelopes
or add a new shell API.

Compatibility

  • Existing NAP-IFC transport remains unchanged.
  • Consumers are expected to ignore malformed payloads, unknown fields, and
    unsupported topics.
  • The provisional NAP-NN-TOPIC-PAYLOADS identifier should be replaced with
    the assigned NAP-NN number after merge.

Validation

  • git diff --check -> PASS
  • git diff --check HEAD~1..HEAD -> PASS
  • rg -n "hyprgate|napplet/napplet|@napplet" NAP-NN-TOPIC-PAYLOADS.md README.md -> no matches
  • git status --short --branch -> ## nap-topic-payload-semantics...origin/master [ahead 1]

Non-goals

  • Shell window management, workspace placement, or focus policy.
  • wm:* shell telemetry topics.
  • shell:* host command topics.
  • Deprecated identity topics such as auth:identity-changed.
  • Stale stream:channel-switch alias promotion.
  • Media playback handoff; that remains NAP-MEDIA / NAP-PLAYER territory.

Follow-ups

  • Assign the final NAP-NN number during review/merge.
  • Update downstream SDK/docs references if reviewers rename the draft or change
    payload fields.
  • Revisit typed helper ergonomics only after the topic protocol shape settles.

Defines profile, chat, and stream context topic payloads carried over NUB-IFC without changing the generic IFC transport surface.

Tested: git diff --check
@dskvr

dskvr commented May 25, 2026

Copy link
Copy Markdown
Contributor Author

Closing this umbrella topic-payload PR because the topic semantics should be split into separate numbered NUB-NN drafts per topic instead of one combined NUB. I will replace this with one PR per topic.

@dskvr dskvr closed this May 25, 2026
@dskvr dskvr changed the title NUB-NN: Topic payload semantics over IFC NAP-NN: Topic payload semantics over IFC Jun 3, 2026
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