Skip to content

docs(names): specify portable identity disambiguation - #227

Merged
loganj merged 3 commits into
mainfrom
docs/identity-name-spec
Sep 25, 2026
Merged

loganj merged 3 commits into
mainfrom
docs/identity-name-spec

Conversation

@loganj

@loganj loganj commented Sep 24, 2026

Copy link
Copy Markdown
Contributor

🤖

Summary

Other Buzz clients need a precise way to reproduce the desktop app’s duplicate-name labels. This extracts the existing behavior into a client-independent specification and supplies shared input/output examples that clients can use to check their implementations. It does not change runtime behavior.

Details

  • Defines human-first, mine-before-others priority; comparison contexts; multiple aliases for one identity; exact text normalization; owner qualifiers; and repeated collision checks through full-key fallback counters.
  • Separates display names from identity and authorization, and the shared naming algorithm from desktop-specific fact selection.
  • Adds 31 portable JSON cases and runs them through the desktop app’s production resolver in its existing test suite. All 14 original policy tests remain unchanged, including ordering and alias checks; integration tests are untouched.
  • Links the spec from the README. Uses the feature-contract style in this repo and the normative rules/shared-fixture approach in block/buzz’s NIP-MP specification. No new event format or NIP is introduced.

Validation

All 46 policy tests pass. Pre-push checks passed TypeScript, 47 selected tests, and design checks at 8b10641. Local links in the specification were checked. No browser or native build was needed for this documentation and test-only change.

Signed-off-by: Larry <627498bd4bd1f281a16431e3c6cce3b5c25b6692798c78672298aefbf2f8f8b5@buzz.block.builderlab.xyz>
@loganj

loganj commented Sep 24, 2026

Copy link
Copy Markdown
Contributor Author

🤖 Validation at 8b10641: all applicable hosted checks now pass; Windows native validation was skipped as configured. The first run failed two assertions in the unchanged new-message browser journey (Chromium: second sent message visibility; WebKit: transient removal image). Both failed jobs passed on one rerun without code changes. The same runtime/browser sources also passed on base main 82bb3a6 (run 36029796120). This records intermittent browser failures; the retry is not a fix for them. Spec and fixture changes remain runtime-neutral.

Larry added 2 commits September 24, 2026 14:27
Signed-off-by: Larry <627498bd4bd1f281a16431e3c6cce3b5c25b6692798c78672298aefbf2f8f8b5@buzz.block.builderlab.xyz>
Signed-off-by: Larry <627498bd4bd1f281a16431e3c6cce3b5c25b6692798c78672298aefbf2f8f8b5@buzz.block.builderlab.xyz>
@loganj
loganj marked this pull request as ready for review September 24, 2026 19:06
@loganj
loganj requested review from a team, comp615 and wesbillman as code owners September 24, 2026 19:06
@loganj
loganj merged commit 92c2fb2 into main Sep 25, 2026
12 checks passed
@loganj
loganj deleted the docs/identity-name-spec branch September 25, 2026 13:07
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.

2 participants