Show separate identity cards and prevent duplicate imports - #225
Conversation
e6a96c4 to
8e857be
Compare
129a378 to
cf5bae6
Compare
8e857be to
2beebdc
Compare
cf5bae6 to
c47f7ab
Compare
c47f7ab to
b1e77fe
Compare
8bcaefc to
6be3d14
Compare
745aaf9 to
cd4172f
Compare
6be3d14 to
2d98f43
Compare
2d98f43 to
e1c37cd
Compare
cd4172f to
a7151f5
Compare
e1c37cd to
6e27ec7
Compare
a7151f5 to
0d2b922
Compare
kalvinnchau
left a comment
There was a problem hiding this comment.
Just a P3, approving
0d2b922 to
657ea06
Compare
6e27ec7 to
336b31e
Compare
wesbillman
left a comment
There was a problem hiding this comment.
Star Lord automated source review via Wes’s account — non-blocking COMMENT review.
Reviewed head 657ea06871cf38c6fbdf393085cb541fec413459 against base/merge-base 336b31ede9b52c0a30788d71eca0fa13481c3f0d. This is a bounded follow-up to the earlier source review, after comparing actual code changes: rechecked the prior import finding, the per-identity card integration, reservation lifetime, and the removal of the obsolete grouping helper and its test callers.
One actionable P2 is attached inline. No additional actionable defects found in the reviewed follow-up scope.
Validation: pinned Git source and relevant callers/test source inspected; extracted bytes verified against Git blobs; git diff --check passed. No PR code, tests, builds, installs, app launches, credentials, or live imports were executed/accessed. CI was not assessed in this cycle; native concurrency, rendered UI, and human acceptance remain unverified. This is not an approval or merge authorization.
657ea06 to
cc4b36f
Compare
336b31e to
6f722c5
Compare
c83127e to
4ab4fab
Compare
wesbillman
left a comment
There was a problem hiding this comment.
Star Lord’s automated source review (via Wes’s account)
No new actionable findings in this bounded rebase follow-up. Reviewed head 4ab4fab63462c6bace4f7b88d03aa4e17c37c805 against base 401fb8d301a310ea7d12fc1a59c51bf1907c2078, comparing the feature patch with previously covered code at c83127e644d587fccb8e1935e8211ba8c9aba9a4 (source-tree equivalent to reviewed #226 head 3e749fdb8a8e4ec60f9246091017f8850a427423).
- The prior duplicate-import UI finding remains fixed. The app-wide snapshot filters keys held in another community, while an exact saved identity reappears only for its missing team-instruction repair (
AgentImport.tsx:71–81;AgentControlPanel.tsx:184–209). I checked the different-community regression and the repair/retry component cases. - The rebase preserves the separate native repair path before rejecting duplicate new imports. Repairs bypass credential acquisition and reach the revision-checked atomic
Store::importoperation; the shared import reservation remains held through commit and releases on failure/drop (import.rs:154–202,235–294;store.rs:29–40,279–302). The existing native regression checks preservation of edited settings and a concurrent Stop, without credential reads. - Use here still reaches the registered/allowed native command, and incomplete setup clears both enabled and start-on-launch intent. The changed IPC test resets the prior mock implementation before checking this command. Both PR commits contain DCO sign-off trailers.
This follow-up covers the changed import/repair integration and prior fixes; it does not reopen unrelated areas or dismiss earlier reviews.
Validation limits: source-only inspection of immutable GitHub blobs, verified against pinned trees; no dirty working-tree inputs. Tests were read, not run. No builds, app launches, credential access, live import/setup operations, or CI checks were performed. Native/runtime behavior and human acceptance remain unverified. This non-blocking COMMENT is not an approval or merge authorization.
4ab4fab to
0d03666
Compare
wesbillman
left a comment
There was a problem hiding this comment.
Star Lord’s automated source review (via Wes’s account)
No new actionable findings in this bounded rebase/integration follow-up. Reviewed head 0d03666592da43d8496a97dd58a9750c1a21a7e7 against base 1d19153276b93ef733fe5e8ead888fc528fc00e3, comparing actual source changes with previously reviewed head 4ab4fab63462c6bace4f7b88d03aa4e17c37c805 (prior review).
- The prior duplicate-import fix remains intact: app-wide managed keys exclude a second import across communities, while the exact saved identity remains eligible for missing-team repair (
AgentImport.tsx:71–81;AgentControlPanel.tsx:202–211). - Use here still matches the registered/allowed native command and its
{id, resolution}arguments. Incomplete identities remain excluded from shared runnable choices and start-on-launch selection. - Traced the inherited Goose-install restart integration through
src-tauri/src/agents.rs:591–656andcrates/agent-controller/src/runtime.rs:604–680: setup is checked before credential access, checked again before action, and required before launch.harness_setup.rs:259–282selects enabled agents that failed specifically because Goose is missing, not stopped imports. Mantis’s independent native lane was reconciled against these source paths. - Separated inherited base changes (including installer, npub rendering, and broker logging/rate limiting) from this PR’s changes. The previously reviewed reservation/Use here internals and broker resolution route are unchanged; no new evidence justified reopening them. Both PR commits retain DCO sign-offs.
Validation limits: immutable GitHub source extracts verified against pinned Git blobs; no dirty working-tree inputs. Tests and callers were read, not run. No builds, installs, app launches, credential access, or live import/setup operations. A single CI snapshot showed JavaScript, browser measurements, Semgrep, zizmor and DCO successful; Rust/tool integration and all six browser journey shards were still in progress; Windows native validation was skipped. CI was not watched or re-polled. Native/runtime behavior, rendered UI and human acceptance remain unverified.
This non-blocking COMMENT is not an approval or merge authorization.
0d03666 to
f92f6a9
Compare
46f7751 to
d3efcb6
Compare
d3efcb6 to
88acd23
Compare
wesbillman
left a comment
There was a problem hiding this comment.
Star Lord’s automated source review (via Wes’s account)
No new actionable findings in this bounded integration follow-up. Reviewed head 88acd23a85d62357ae6dd4116415586c372d2d5c against base ea7ddb81aebd6da9dd832378aa19df1bff8d7ac2, comparing the actual feature delta with previously reviewed head 0d03666592da43d8496a97dd58a9750c1a21a7e7 and its base (prior review). This is not a fresh review reopening unchanged areas.
- Identity-card integration: the per-identity inventory survives the inherited layout/header changes. The public-key disclosure now uses the shared popover with an identity-specific accessible name (
AgentCard.tsx:203–230). Updated component and browser assertions check the exact npubs and Escape focus restoration (AgentCard.test.tsx;AgentLibrary.test.tsx;tests/browser/agents.spec.mjs:8–22). I inspected error/retry transitions separately; rendered keyboard behavior remains unverified. - Import/setup integration: the native reservation, duplicate-key rejection and Use here feature changes are unchanged relative to their respective bases. The existing app-wide key exclusion and exact missing-team-repair exception remain in
AgentImport.tsx:71–81, with all saved agents supplied byAgentControlPanel.tsx:204. Inherited default resolution clones settings rather than changing identity/setup state (agent_defaults.rs:160–170). Incomplete imports are still checked before credential access and launch (runtime.rs:684–708, 754–777); save/default restarts select only running, enabled agents (agents.rs:634–713). Use here clears enabled/start-on-launch intent when completing setup (store.rs:220–264). - Public materials: confirmed the repository is public and inspected the description and all three attached images. I found no internal coordination links, workspace identifiers, personal information or secrets in those displayed materials; the images show fixture-style labels and reserved example URLs. This inspection is not proof the screenshots were captured at the stated head.
- Both PR commits retain DCO sign-offs. No source changes were made.
Validation limits: 207 immutable source extracts were checked against their pinned Git blob hashes; no dirty working-tree inputs. Source, callers and tests were read, not executed. No builds, installs, app launches, credential access or live import/setup operations. One hosted CI snapshot showed Semgrep, zizmor, browser measurements and DCO successful; JavaScript, Rust/tool integration and all six browser journey shards were in progress; Windows native validation was skipped. No CI polling. Native/runtime behavior, live accessibility and human acceptance remain unverified.
This non-blocking COMMENT is not an approval or merge authorization.
88acd23 to
0eaf93d
Compare
…orts Signed-off-by: Larry <627498bd4bd1f281a16431e3c6cce3b5c25b6692798c78672298aefbf2f8f8b5@buzz.block.builderlab.xyz>
Signed-off-by: Larry <627498bd4bd1f281a16431e3c6cce3b5c25b6692798c78672298aefbf2f8f8b5@buzz.block.builderlab.xyz> Co-authored-by: Larry <627498bd4bd1f281a16431e3c6cce3b5c25b6692798c78672298aefbf2f8f8b5@buzz.block.builderlab.xyz>
0eaf93d to
ef58e9e
Compare
…t-update-drafts * commit '0a4982797f38164d75e3e8f48e58fabb9dd59e66': (66 commits) Show saved local and relay inventory while retaining existing import controls (#286) feat(channels): edit channel details with confirmed saves (#369) test(channels): discover the hoverable width for activity corners (#416) Fix flaky WebKit menu focus browser test (#409) Test Goose connections and fix Pi test false failures (#383) feat: open threads with verified newest-first windows (#154) Add agent conversation context selection (#382) test: keep behavioral coverage without cosmetic matrices (#410) Fix reading position and composer caret on channel return (#411) fix(channels): prevent clipped activity rows and remove separators (#377) ci: publish signed macOS updater artifacts in prereleases (#387) feat(messages): add jump to latest controls (#374) Align reply summaries with message content (#408) Add centered thinking pills to agent avatars (#351) Keep focus where the user moved it when a menu finishes closing (#355) Browse legacy identities without a destination and review text before cloning (#285) Show separate identity cards and prevent duplicate imports (#225) Polish message and thread spacing, grouping, and typography (#364) Remove the Away avatar badge stroke (#395) fix(profiles): hide activity on human profiles (#391) ... Signed-off-by: Sol <49aa1f65411fd096d2e2ec144f1e7aa36fdc76d1b907cfdf7be000c66f9d3b8e@buzz.block.builderlab.xyz>
* origin/main: (25 commits) Show saved local and relay inventory while retaining existing import controls (#286) feat(channels): edit channel details with confirmed saves (#369) test(channels): discover the hoverable width for activity corners (#416) Fix flaky WebKit menu focus browser test (#409) Test Goose connections and fix Pi test false failures (#383) feat: open threads with verified newest-first windows (#154) Add agent conversation context selection (#382) test: keep behavioral coverage without cosmetic matrices (#410) Fix reading position and composer caret on channel return (#411) fix(channels): prevent clipped activity rows and remove separators (#377) ci: publish signed macOS updater artifacts in prereleases (#387) feat(messages): add jump to latest controls (#374) Align reply summaries with message content (#408) Add centered thinking pills to agent avatars (#351) Keep focus where the user moved it when a menu finishes closing (#355) Browse legacy identities without a destination and review text before cloning (#285) Show separate identity cards and prevent duplicate imports (#225) Polish message and thread spacing, grouping, and typography (#364) Remove the Away avatar badge stroke (#395) fix(profiles): hide activity on human profiles (#391) ... Signed-off-by: Sol <49aa1f65411fd096d2e2ec144f1e7aa36fdc76d1b907cfdf7be000c66f9d3b8e@buzz.block.builderlab.xyz> # Conflicts: # src/bundled/agents/AgentsPage.test.tsx # src/bundled/agents/AgentsPage.tsx
🤖
Summary
Details
main. Discover saved relay agents without changing the page #224 is merged.Screenshots
Captured from the browser test fixture at this PR's head.
Each identity gets its own card. Two identities with the same name show a short key suffix; a profile with no identity is listed separately
An incomplete import offers Use here; Start stays disabled until then
After Use here confirms the community, the agent is set up and stays stopped until you press Start