feat: add links organizer UI and assistant promotion#1823
Draft
richardfogaca wants to merge 14 commits into
Draft
feat: add links organizer UI and assistant promotion#1823richardfogaca wants to merge 14 commits into
richardfogaca wants to merge 14 commits into
Conversation
Contributor
Author
|
Architecture follow-up is tracked internally in preset-io/agor-cloud#146. This UI stack should be reworked against that lifecycle so links use board/session scoped fetches, normalized store indexes, and centralized realtime reducers instead of component-local fetch/listener state. |
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.
Linked issue
Refs #1716
Related #1766
Summary
/link-content/:linkIdfor images, Markdown/text, and downloadable documents.Why / context
This takes the accepted
explore-links-organizer-uivisual exploration and hardens it into real service-backed behavior on top of the links foundation branch.The goal is to keep the visual UX that tested well while removing exploration-only fixtures, local paths, fake pin state, and query-mode demos. Links remain scoped as session-owned or branch-owned records; assistant links are represented as pinned branch-owned links on the board's primary assistant branch.
Implementation notes
issue-90-links-foundation/ feat: add links foundation #1689.linksservice records plus existing branch issue/PR references.target_keyand does not move/delete the source link./link-content/:linkIdis bearer-authenticated, loads throughlinks.get, serves uploaded file-backed records only, rejects symlinks/out-of-upload-root paths, and enforces MIME/size constraints.source_message_id; parsed URLs are not duplicated as cards.Validation / test plan
pnpm exec biome check <focused changed files>git diff --checklink-promotion.test.ts+link-content.test.ts— 10 tests passedlinkPromotion.test.ts,linkDisplay.test.ts,SessionLinksControl.test.tsx,BoardAssistantPanel.test.tsx,SessionPanel.test.tsx— 21 tests passedhttp://localhost:5053/http://localhost:3053/healthHost Vitest could not run in this isolated worktree because local deps are incomplete (
vitest/config,vitest,@vitejs/plugin-reactunresolved); the same focused suites passed inside the branch Docker environment.Screenshots / demos
Screenshots captured from the live branch environment:
Session quick links popover
Manage links drawer
Branch Links tab
Session pinned links strip
Assistant pinned links
BranchCard pinned links
Chat attachment cards
Assistant promotion state
Risks / rollout / rollback
Out of scope / follow-ups