Skip to content

feat(wiki): render wiki group on unified metric-results#204

Merged
aleksdotbar merged 2 commits into
mainfrom
feat/unified-metrics-wiki-ui
Jul 17, 2026
Merged

feat(wiki): render wiki group on unified metric-results#204
aleksdotbar merged 2 commits into
mainfrom
feat/unified-metrics-wiki-ui

Conversation

@aleksdotbar

Copy link
Copy Markdown
Contributor

Cut the wiki dashboard group over to the unified /v1/metric-results path, mirroring the git/collab/task cutovers. Wiki was the last kind:"legacy" group.

What

  • Wiki group flipped to kind:"metrics" with a WIKI_COLLECTION (period/peer for all four; timeseries on pages-created + edits), a 3-metric preview (pages created / edits / comments), and a pages-created + edits timeseries drilldown.
  • Removed all wiki legacy plumbing: bullet sections + transform in ic-dashboard.ts, team-view.ts section, metric-order/bullet-defs entries, the wiki_bullet_rows catalog prefix, and the IC/TEAM_BULLET_WIKI registry ids (their UUIDs collide with the surviving V2_MEMBER_VALUES_* — those are untouched).
  • With no legacy groups left, the team bullet batch is gated on a non-empty section set — a disabled TanStack query stays pending forever, which would hang the team view's loading gate; it also avoids firing an empty batch on every load.

Backend: constructorfabric/insight#1812.

Safety

New-FE + old-BE degrades to a wiki-card error only; the rest of the dashboard is unaffected. No KPI change (wiki isn't in the KPI row); no heatmap/dept feed for wiki.

Verification

  • tsc -b (real typecheck), eslint --max-warnings 0, vitest — 312/312.
  • Drove the dashboard end-to-end against a live analytics API: the Wiki card + drilldown render off /v1/metric-results.

Closes constructorfabric/insight#1705

🤖 Generated with Claude Code

Flip the wiki dashboard group from the legacy bullet path to a unified
collection — pages-created / edits / comments preview, plus a
pages-created + edits timeseries drilldown — and strip the wiki legacy
plumbing (bullet sections, metric-order, registry ids, catalog prefix).

With no legacy groups left, gate the team bullet batch on a non-empty
section set: a disabled query stays "pending" forever, which would hang
the team view's loading gate, and it would otherwise fire an empty
batch on every load.

Closes constructorfabric/insight#1705

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Signed-off-by: Aleksandr Barkhatov <pm@aleks.bar>
@aleksdotbar
aleksdotbar requested a review from a team as a code owner July 17, 2026 11:03
@coderabbitai

coderabbitai Bot commented Jul 17, 2026

Copy link
Copy Markdown

Warning

Review limit reached

@aleksdotbar, you've reached your PR review limit, so we couldn't start this review.

Next review available in: 33 minutes

Enable usage-based reviews in Billing to review now. Otherwise, wait until the next included review is available.
You're only billed for reviews past your plan's rate limits ($0.25/file).

How can I continue?

After more reviews become available, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews.

How do review limits work?

CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability.

For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window.

Please refer docs for additional details.

Review details
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: ee940a05-0626-467a-8d6d-0a87fe67858c

📥 Commits

Reviewing files that changed from the base of the PR and between a98475e and 6724df9.

📒 Files selected for processing (11)
  • src/api/catalog-client.ts
  • src/api/metric-registry.ts
  • src/components/widgets/v2/group-drilldown-sheet.test.tsx
  • src/lib/insight/groups.ts
  • src/lib/insight/v2/bullet-defs.ts
  • src/lib/insight/v2/metric-order.ts
  • src/queries/ic-dashboard.ts
  • src/queries/team-view.test.ts
  • src/queries/team-view.ts
  • src/screens/ic-dashboard/engineering-dashboard-v2.tsx
  • src/screens/team-view-v2.tsx
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch feat/unified-metrics-wiki-ui

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.

@ktursunov ktursunov left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please improve coverage

Unit-test isTeamBulletSectionId. The legacy team-bullet wiring
(LEGACY_GROUP_IDS map/filter, LEGACY_GROUP_FEEDS, the legacy error
branch) is inert with no kind:"legacy" group left, so mark it v8-ignore
rather than test-force a legacy group that cannot occur in the shipped
config. Clears the diff-coverage gate.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Signed-off-by: Aleksandr Barkhatov <pm@aleks.bar>
@aleksdotbar
aleksdotbar merged commit 32bd90b into main Jul 17, 2026
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

feat: migrate wiki metrics to unified metric system (frontend)

2 participants