Repository navigation
Pin the details slot and the same-home filter of the removal line (#1033) - #1116
Merged
Merged
Conversation
) #1001's own case calls FriendChatSettings directly, so the two seams that carry the copy were unpinned: dropping `roster` from the BotSocialDetails call kept the suite green, and so did removing the home comparison in `stillLinked`, which would print another friend's Bot as the link that keeps this one. Case 1 mounts through the component the plugin registers for flybot.bot.details; case 2 builds a roster with two friends whose Bots share a display name and asserts only the same home's Bot is named. Test-only, no source change. Docs-not-needed: test-only cases for the details slot wiring and the same-home filter (#1033)
Collaborator
Author
|
Verdict: PASS at 5ed6504 Written-by: Reviewer Test-only: one file, The seams are real, and each case fails on the seam it names, not on something nearby:
Ran:
Ghost check per #972: Not run: nothing else changes. CI at this tip: tests-ok, plugins (social/tree/timeline), Node 24, package, merge-gate, agent-audience all success; No blocking or non-blocking findings. |
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.
Owner: Dev3
Reviewer: Reviewer
Written-by: Dev3
Fixes #1033
Tip SHA: 5ed6504
Docs-not-needed: test-only cases for the details slot wiring and the same-home filter (#1033)
Reproduce
#1001's case calls
FriendChatSettingsdirectly (plugins/social/test/social.test.js, the #1001 test), so twoseams that carry its copy were never exercised:
client.jsBotSocialDetailsrendersh(FriendChatSettings, { bot, actions, roster }); that component is whatflybot.bot.detailsregisters (client.js:3855), and the host mounts it with{ bot, roster, actions, call }.Delete
rosterthere and every test stayed green.FriendChatSettings'sstillLinkedfilter compares(other.home ?? other.handle) === (home ?? handle). The onlyroster in the suite held two Bots of the same friend, so deleting the comparison stayed green — while real data
would print another friend's Bot as "still shared through X".
What changed
Two cases in
plugins/social/test/social.test.jsonly, no source change:#1033: the details slot hands the roster to the removal question— takes the entry the plugin registers forflybot.bot.details, asserts its component isBotSocialDetails, and mounts that with{ bot, actions, roster }, then reads the inline question and expects "still shared through Writer".#1033: only the same home's Bot is named as the link that keeps the friend— a roster with two friends whoseBots are both named
Writeron different homes; asserts the sentence namesWriterexactly once, so the otherfriend's Bot cannot be counted as the link.
What I ran
cd plugins/social && node --import ./test/resolve.mjs --test test/social.test.js5ed65043: 426/426, 0 skipped (424 before these two cases; the run also prints the expectedModel flybot-remote/... is not availablediagnostics for the fake roster, as base does).h(FriendChatSettings, { bot, actions })(droproster): 425/426, the only red is case 1.stillLinkedfilter with the home comparison removed: 425/426, the only red is case 2(
Writer, Writerwhere one name is expected).cmponclient.jsand re-ran: 426/426.Red without the source change
This is test-only, so the base tree is green: both cases describe behaviour #1001 already ships, and the issue
says so (main + the two cases is green by design). The evidence that they are worth having is the two knives above:
each seam, deleted one at a time, turns exactly one case red and nothing else, so a refactor that drops the slot's
rosteror the home comparison can no longer pass unnoticed.Not run
oxlint/npm run verify— neither binary exists on this box; CI'splugins (social)job covers lint and thesuite (
tests-ok).plugins/social.arch-docs— needsgit; the trailer is in the commit message above and in the PR body (the queue squashes thebody into the landed commit), so both places carry it.
Risk
Low. No production code changes; the cases read the tree the app builds. If
BotSocialDetailsever stops readingrosterfrom props, case 1 is meant to fail. No changelog fragment: nothing a user sees.