Repository navigation
Polish invites and friend chats: friend Bot placeholder, one invite control, Add friend auto-close, Sharing hint - #504
Merged
Conversation
…t, one invite control, Add friend auto-close, Sharing hint (ThinkFlowLab#499)
Collaborator
Author
|
Self-review: PASS
|
…ThinkFlowLab#481/ThinkFlowLab#501/ThinkFlowLab#505) Keep ThinkFlowLab#499 composer-label / data-placeholder docs with ThinkFlowLab#481 phone hold-card targets. Regenerated client bundle patch after merge.
Collaborator
Author
|
Self-review: PASS
|
Resolve social.md and social client with main's Share with a friend (ThinkFlowLab#500/ThinkFlowLab#516) kept under OwnBotSharing alongside ThinkFlowLab#499 inviteControls and revoke hint. Regenerate core client bundle and ds-bot patches. Update ThinkFlowLab#499 test for the extra ShareWithFriend child.
Collaborator
Author
|
Self-review: PASS
|
…chat-polish # Conflicts: # patches/ds-bot/0008-client-bundle.patch
Collaborator
Author
|
Self-review: PASS
|
This was referenced Oct 20, 2026
github-merge-queue Bot
pushed a commit
that referenced
this pull request
Oct 20, 2026
…515) Fixes #506. ## What After #499/#504 renamed the Sharing control to **Copy invite link for <Bot>**, host refusal text, the new-chat invite failure note, and zh i18n still said **Bot settings → Invite to this Bot**. This PR retargets those user-visible strings (and matching docs/comments/tests) to **Bot settings → Sharing → Copy invite link**. Based on `fix/499-invite-friendchat-polish` (#504) with `origin/main` merged in so the leftover copy lands on top of the rename. ## Why Those messages pointed at a button that no longer exists once #504 lands. ## Test - `ARCH_DOCS_BASE=origin/main TZ=UTC npm run verify` — pass (0 failures) at tip - `core/test/remote-room.test.js` ungranted-local assertion updated to `Sharing → Copy invite link for Writer A` ## Risk tier Risk tier: T2 (estimate; the controller sets the label) — copy/docs/i18n only, no grant or transport behavior change. Tip SHA: 6e7e9e6 Docs-not-needed: copy-only string and comment updates in owned files (core-client, core-host, plugin-runtime, tree); no subsystem doc names the old "Invite to this Bot" control, and social.md / team.md carry the doc change. --------- Co-authored-by: Birfy <15378933+Birfy@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.
Fixes #499
What / why (owner decision 2026-10-20, option (a): all four polish items)
HeaderPillnow holdsMessage <Bot (owner)>through a newcore/src/client/composer-label.jsin a layout effect (before the first paint). It writes botharia-labelanddata-placeholder(before, onlyaria-label) and rewrites them inside the MutationObserver callback, with no rAF delay. On cleanup it gives back the shell's latest value.inviteControlsinplugins/social/client.js) in Add friend → Invite a friend and in Bot settings → Sharing. Before a link exists there is one button, Copy invite link for Chief, which makes the link and copies it. After that the link shows with Copy link / Copy with instructions / New link. Every copy note names the Bot:Invite link for Chief copied./Invite for Chief copied with instructions.Invite grants Chief only.and addsRevoke anytime in People with access.only once People with access lists someone. The empty list now readsNobody has this Bot yet. Copy an invite link above and send it to a friend.People with access only gained anonGrantscount callback; its grant logic is unchanged.Tests
core/test/composer-label.test.js(jsdom): a friend's Bot composer readsMessage Chief (SelfA1233)from the first paint (hero copy), after a send (coding copy) and after a remount, with no build/commands/@ files/sessions wording; it hands back on cleanup.looks.test.jschecks that the header uses a layout effect.plugins/social/test/social.test.js: the same control and Bot-named copy notes in Add friend and Sharing; the error clears when you type in the paste box; Enter accepts; auto-close plus opening the friend's Bot (only when a Bot was shared); the Revoke hint; wrapping paste box.Ran at the tip:
ARCH_DOCS_BASE=origin/main TZ=UTC npm run verifypassed (core 1079, social 299, tree 80, timeline 83, scripts 93, interop 37, live-e2e 16; plugin lint OK). Not run: live Mac instances, browser smoke.Generated files were rebuilt:
core/client.js,patches/ds-bot(0003/0008/0012 and newfiles/), changelog fragmentchangelog.d/499-invite-friendchat-polish.fixed.md. Docs: README (en/zh),docs/subsystems/social.md,docs/subsystems/core-client.md.Risk tier: T2 (estimate; the controller sets the label)