Skip to content

feat(web): activity section in the entity side panel - #5597

Draft
synoet wants to merge 8 commits into
synoet/property-transitionsfrom
synoet/activity-sidepanel
Draft

feat(web): activity section in the entity side panel#5597
synoet wants to merge 8 commits into
synoet/property-transitionsfrom
synoet/activity-sidepanel

Conversation

@synoet

@synoet synoet commented Aug 12, 2026

Copy link
Copy Markdown
Contributor

No description provided.

synoet added 5 commits August 12, 2026 09:30
Renders the entity's recent activity (actor, verb, relative time) from
the GraphQL activity edge, in the side panel for documents/tasks,
email threads, chats, projects, and calls. Gated behind the new
enable-entity-activity-section PostHog flag (dev-on): the section
component owns the gate, so the EntityActivity query is never issued
while off. Reuses the properties query's exact-single-entity Soup
input builder, so supported entity types match properties exactly.
Unknown actions render their humanized raw tag instead of hiding.
urql's default preferGetMethod ('within-url-limit') sends documents
that fit in a URL as GET — but GET on the DSS GraphQL path serves the
GraphiQL IDE, so the client gets HTML and errors. Every pre-activity
document was too large to trigger this; the compact activity queries
are the first to fit. Pin both clients to POST, matching the
backend's contract.
'changed Status to Completed' / 'cleared Due Date' instead of
'changed a property': the definition name comes from the shared
definitions query and select-option ids resolve through the
definition's options. Unlabelable values fall back word by word, and
'from' renders automatically once producers start carrying the
previous value.
Actors render as 'You' / display name (local-part fallback, never the
full email) / 'Automation'. Property changes use the property system's
own visuals: select values as option pills with the system option
icons and tag color dots. Entity references get a real document
mention (EntityMention: the editor's mention decorator via
StaticMarkdown, with hover preview, access states, click-to-open;
non-block entity kinds fall back to an icon + name chip).
text-text-secondary wasn't a real token (muted text rendered
unstyled) — replaced with ink-muted/ink-extra-muted. Side-panel rows
follow the section convention (text-xs, compact rows) and option
pills size to text-xs like row pills elsewhere.
@github-actions

github-actions Bot commented Aug 12, 2026

Copy link
Copy Markdown

@coderabbitai

coderabbitai Bot commented Aug 12, 2026

Copy link
Copy Markdown
Contributor

Important

Review skipped

Draft detected.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro Plus

Run ID: ad233ef0-4a26-4a0a-87e1-0a520a220eb0

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

synoet added 3 commits August 12, 2026 10:11
Chosen from a variant comparison: dots on a connected line (issue-
timeline feel), no card chrome. Adds the shared ActionPhrase and
ActionGlyph row pieces and an entity-directed verb helper
(describeActionForEntity) that pairs each action kind with its
natural connector (created X / sent a message in X / changed … on X).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant