Skip to content

feat(issues): Color activity timeline connectors by issue status#115518

Draft
scttcper wants to merge 1 commit into
masterfrom
scttcper/activity-timeline-colors
Draft

feat(issues): Color activity timeline connectors by issue status#115518
scttcper wants to merge 1 commit into
masterfrom
scttcper/activity-timeline-colors

Conversation

@scttcper
Copy link
Copy Markdown
Member

Adds colored connector lines and icon borders to the activity timeline in the drawer view. A state machine walks the activity history to reconstruct the issue's status at each point in time, then colors connectors based on the status during the interval between events - red for unresolved, green for resolved, yellow for new, gray for ignored/neutral.

The timeline component gets connectorColor and iconBorderColor props, using a CSS custom property (--timeline-connector-color) to layer colored segments over the existing neutral connector line. Only computed when isDrawer is true.

Adds colored connector lines and icon borders to the activity timeline
in the drawer view. A state machine walks the activity history to
reconstruct the issue's status at each point, then colors connectors
based on the status during the interval between events (red for
unresolved, green for resolved, yellow for new, gray for
ignored/neutral).

The timeline component gets connectorColor and iconBorderColor props,
using a CSS custom property to layer colored segments over the existing
neutral line.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@github-actions github-actions Bot added the Scope: Frontend Automatically applied to PRs that change frontend components label May 13, 2026
@github-actions
Copy link
Copy Markdown
Contributor

📊 Type Coverage Diff

Metric Before After Delta
Coverage 93.51% 93.52% 🟢 +0.01%
Typed 135,447 135,482 🟢 +35
Untyped 9,393 9,394 🔴 +1
🔍 1 new type safety issue introduced

Type assertions (as) (1 new)

File Line Detail
static/app/components/timeline/index.tsx 50 as CSSProperties{ ...style, ...(connectorColor ? {'--timeline-connector-color': connectorColor}…

This is informational only and does not block the PR.

@kcons
Copy link
Copy Markdown
Member

kcons commented May 13, 2026

This is cool. The status information at various points in time is pretty easy for us to derive from the issue action log, so there may be a case for using it do this sort of thing, but the practicality of that depends on some other specifics of how we integrate with the activity view that I'm not sure of yet. For relatively small activity feeds or suitably filtered, we can just run the processing; for the outlier cases it may involve checkpointing, reverse processing, or fully-derived activity view stuff.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Scope: Frontend Automatically applied to PRs that change frontend components

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants