feat(profiles): show agent metadata and copyable nip05 - #253
Conversation
wesbillman
left a comment
There was a problem hiding this comment.
Carl, an automated reviewer, commenting via Wes’s GitHub account.
Changes requested: one accessibility regression in the copy-row presentation (inline). Resolve it with coverage of the announced values and NIP-05 qualifier. The reviewed metadata provenance, owner precedence, recovery and shared transport paths need no redesign.
Existing CI run 36097758499 tested this head merged into df7b7e7f45739f3e06e12d81623385701acdc51d: JavaScript failed only at the unrelated AgentModelPicker cancel-lookup case (3728/3729); hosted browser passed 658 functional cases plus 7 measurements. That required CI gate remains separate from this finding. No rerun requested.
Source-only review on isolated Blox; no PR code executed. Ownership-transition coverage is jsdom-level; browser coverage exercises copy/host-toast wiring, not live ownership transitions. No real clipboard, assistive-technology session, live-relay or native acceptance was performed; compatibility with the external base-Buzz serializer was not independently established.
| tabIndex={0} | ||
| type="button" | ||
| className={styles.copyField} | ||
| aria-label={`Copy ${label}`} |
There was a problem hiding this comment.
[P2] Preserve the values and unverified qualifier in the copy rows’ accessible text.
The explicit aria-label ("Copy" plus the field label) overrides the button’s descendant text when computing its accessible name. A user focusing these controls hears only “Copy NIP-05”, “Copy Agent type” or “Copy Capabilities”, without the identifier/type/capabilities value. For NIP-05 this also loses the “unverified” qualifier previously exposed as ordinary paragraph text; its presence inside the button is not enough to include it in the announced name.
Include the displayed value and, for NIP-05, the unverified qualifier in the accessible name or description (or retain them as separate accessible text). Add assertions for those accessible names/descriptions across all three rows; the current text-content assertions do not cover this regression. No metadata/lifecycle redesign is needed.
wesbillman
left a comment
There was a problem hiding this comment.
Carl, an automated reviewer, commenting via Wes’s GitHub account.
Clear on focused re-review; no remaining code blockers found. The prior P2 is resolved: each copy control’s accessible name now includes its displayed value, and NIP-05 retains “unverified”. Three exact computed-name assertions cover the regression. Raw clipboard values, keyboard activation, host toasts and existing lifecycle behavior are preserved; metadata provenance/ownership needs no redesign.
Existing CI run 36122245907, attempt 1, passed for this head merged into df7b7e7f45739f3e06e12d81623385701acdc51d: Vitest 3729/3729, hosted Chromium/WebKit journeys 658/658, measurements 7/7, and CI required green. The unrelated AgentModelPicker failure from the previous run passed this time; this PR does not fix that test.
Source-only review on isolated Blox; no PR code executed by reviewers. Exact-name coverage is jsdom-level, not native screen-reader acceptance. Real OS clipboard, live-relay ownership transitions, native/package acceptance and external base-Buzz serializer parity remain unverified. This is a COMMENTED review, not approval or dismissal of the previous review.
Signed-off-by: cid <d9f92a72922bf45c17379a47d64dae84b6020397c2d5a52b5317d512068cd9d3@buzz.block.builderlab.xyz>
Signed-off-by: cid <d9f92a72922bf45c17379a47d64dae84b6020397c2d5a52b5317d512068cd9d3@buzz.block.builderlab.xyz>
Signed-off-by: cid <d9f92a72922bf45c17379a47d64dae84b6020397c2d5a52b5317d512068cd9d3@buzz.block.builderlab.xyz>
Signed-off-by: cid <d9f92a72922bf45c17379a47d64dae84b6020397c2d5a52b5317d512068cd9d3@buzz.block.builderlab.xyz>
Signed-off-by: am <6e30cd56c30e030cd31bb0939b94a7c257c9a09d5ba2d92cf2735da45629f248@buzz.block.builderlab.xyz>
01069e1 to
b113fad
Compare
Co-authored-by: Kalvin Chau <kalvin@block.xyz> Signed-off-by: Kalvin Chau <kalvin@block.xyz> Signed-off-by: am <6e30cd56c30e030cd31bb0939b94a7c257c9a09d5ba2d92cf2735da45629f248@buzz.block.builderlab.xyz>
…-image * origin/main: (23 commits) fix(agents): recover status polling and scope failure diagnostics (#283) Share avatar editing across community profiles and managed agents (#271) feat(profiles): archive, unarchive and delete agents from the profile pane (#256) ci: run browser journeys on three shards per engine (#280) ci: publish scheduled macOS test prereleases (#262) feat: add private text feedback plugin (#242) 🤖 docs: add pre-PR checklist and review guidance to AGENTS.md (#268) perf(sidebar): stop rerendering every row's menu on channel switch (#265) Explain missing Pi provider models (#263) Browse Goose models and enter provider API keys (#230) test(agents): check model lookup Cancel by visible text (#259) Ask before mentioning people outside the channel (#257) Refine direct message opening (#107) feat(messages): report messages to community moderators (#255) perf(channels): stop rerendering message rows after each channel switch (#269) feat(profiles): open targeted agent editor from owner profile (#254) Let plugins declare local commands and HTTPS origins (#169) feat(profiles): show agent metadata and copyable nip05 (#253) Organize app and community settings (#173) Add status badge cutouts to avatars (#211) ...
Summary
Verification