Skip to main content

Release 2.9.0 — Task scoring, employee management rebuild, Teams/Zoom meetings, AI-powered insights

Release date: 2026-07-20

This note covers everything since the last published release (2.8.0): the two undocumented patch versions 2.8.1 and 2.8.2 are folded in here together with 2.9.0.

Components included:

PanDev Metrics Core

Version: 5.9.0

PanDev Metrics Web (backoffice)

Version: 2.9.0

Highlights

  • Task scoring replaces story points. Story points were added as a universal field synced from Jira, Yandex Tracker, ClickUp, YouTrack and Bitrix24 (and as a native field on PanDev's own Kanban tasks, including cross-tracker blocking relationships) — then superseded in the Web UI by a criteria-based scoring system: a Score column in the backlog table and a task-level scoring modal with slider inputs per criterion.
    (PDM-3825, PDM-3868, PDM-3888, PDM-3826, PDM-3990, PDM-4041, PDM-4048)
  • Employee management, rebuilt. Ground-up rewrite across backend and Web: granular role-based access control (Owner/Maintainer/Finance/Team Lead/Developer) with hierarchy-aware checks, a multi-screen invite flow, work-schedule and calendar management (hybrid schedules, custom days), department/role counters, multi-department membership, archive/unarchive, and an infinite-scroll employee board with server-side filtering.
    (PDM-3843, PDM-3923, PDM-3924, PDM-3941, PDM-3942, PDM-3943, PDM-3944, PDM-3945)
  • Meetings — Microsoft Teams & Zoom, plus Linear. New integrations capture calls, participants and transcripts from Teams and Zoom (app-only Graph auth, admin-consent connect, call-records webhooks/polling, on-prem S2S setup), matched to employees via fuzzy name matching, with personal meeting/call views in the Web app. Linear was also added as a task tracker (hybrid polling + webhook, OAuth or personal token).
    (PDM-3638, PDM-3761, PDM-3783, PDM-3790, PDM-3806, PDM-3809, PDM-3810, PDM-3817, PDM-3827, PDM-3856, PDM-3919, PDM-3920)
  • AI-powered day & meeting analysis. One click on an employee's activity day now produces a qualitative AI summary (metrics, baseline, tasks, kanban moves, commits, meetings) via Datavisor, and meeting transcripts can be analyzed to extract action items and create backlog tasks directly from the insights.
    (PDM-3902, PDM-3918, PDM-3962, PDM-3973, PDM-3978)
  • Integrations, redesigned and faster. New card-based Integrations page with grouping, search and connection-status filters, per-integration setup instructions rendered from docs, and ClickUp/Notion added as connectable integrations. On the backend, GitHub can now be connected as a GitHub App, and Bitbucket/GitHub/Azure project discovery moved to async background sync with pagination and a progress indicator, matching GitLab.
    (PDM-3988, PDM-3796)
  • On-prem licensing & deployment flexibility. A cryptographically signed offline lease keeps on-prem deployments working without constant connectivity to the license service, plus a self-service offline trial mode, an on-prem trial first-start flow, a simplified deployment-URL setup step, and a configurable server URL in organization settings.
    (PDM-3938, PDM-3976, PDM-3957, PDM-3954, PDM-4022)
  • Hour-level activity timeline. Clicking into the employee heatmap opens a detailed Gantt-style modal breaking activity down by hour, with synchronized scrolling, tooltips and full-day views.
    (PDM-3894, PDM-3891)
  • Task board redesign and dashboard resilience. The tasks board migrated to the shared ListBoard component with pagination and status-based filtering; explicit empty and error states were added across dashboards, boards and charts (teams overview, employee/activity widgets, payouts, backlog, all-projects).
    (PDM-3867, PDM-4042)

Other fixes and improvements

Core / backend

  • MCP: Task Flow linking/unlinking, and the Datavisor MCP tool now shares the same skills-based query context (search hints, department scoping) as the in-app agent. (PDM-3851, PDM-3898)
  • Browser plugin can list boards/assignees and create tasks directly (rich-text descriptions, file attachments). (PDM-3871, PDM-3905)
  • New AI coding-tool telemetry sources — GigaCode IDE and AGY CLI — plus more resilient heartbeat-batch ingestion for third-party AI-tool activity. (PDM-1927, PDM-3983, PDM-4018)
  • Task cost breakdown: cumulative task cost and a cost-tree endpoint (task + subtasks) in the finance module. (PDM-3757, PDM-3758)
  • Stabilized monthly task cost allocation. (PDM-4002)
  • Employee-scoped progress distribution and per-status task distribution endpoints for Task Flow. (PDM-3793)
  • Task Flow card enrichment: author, subtask count, participant contribution endpoint, parent/subtasks in the relation graph. (PDM-3754)
  • Weighted scoring for Task Flow backlog tasks. (PDM-4041)
  • Tenant-flag estimateRequired with GET/PATCH endpoints. (PDM-3734)
  • Teams overview API (organizational teams, not Microsoft Teams). (PDM-3984)
  • Critical fix: cross-tenant data leaks in issue queries and rate management (v1/v2), 11 query sites patched. (PDM-3801, PDM-3802)
  • Critical fix: Spring startup crash regression introduced by the tenant-isolation fix. (PDM-3803)
  • Partner-cloud kill-switch: block login when an edge license is revoked. (PDM-3781)
  • PostgreSQL JIT disabled app-wide after causing production incidents. (PDM-3814)
  • MinIO/GraalVM native-image reflection hints fixed (startup crash). (PDM-3901)
  • Fixed 403 on settings/charts and IDE-telemetry endpoints for owner/initial admin roles. (PDM-3904)
  • Fixed initial admin creation/login; demo-license checks kept read-only on partner cloud. (PDM-3986)
  • Upgraded Java 17 → 21; removed unused Vaadin dependency. (PDM-3816)
  • Removed 66 unused frontend API endpoints and associated dead code. (PDM-3804)
  • Stable operationIds generated for 47 previously colliding Swagger endpoints. (PDM-3730)
  • Significant performance work on gantt/timeline, team dashboard and issue pages (materialized views, index pushdown, HikariCP elastic pool sizing). (PDM-3746, PDM-3782, PDM-3798, PDM-3800, PDM-3807)
  • Datavisor: reliable file (PDF/Excel) delivery, hardened against agent loops and hallucinated "session limit" refusals. (PDM-3769, PDM-3771, PDM-3786)
  • Datavisor: SQL step-count and delivery-index guardrails hardened, MySQL guard added, PDF chart/startup fixes. (PDM-3936, PDM-3968)
  • Datavisor: fixed human-time double counting on multi-account users. (PDM-3794)
  • Fixed stale MR/merge-request report data by reading from the canonical materialized view. (PDM-3799)
  • Fixed CallIngestService CGLIB self-proxy issue breaking Spring AOT/native builds. (PDM-3775)
  • Fixed issue/relations Swagger schema (string → array). (PDM-3780)
  • Employee status: show correct current task from active branch, dash out when offline. (PDM-3833)
  • Workload chart now reports team time instead of a load percentage. (PDM-3846)
  • Made team-role description optional when creating a role. (PDM-3855)
  • Fixed empty CLI dashboards for department-wide (non-team-member) views. (PDM-3858)
  • Added is-project-belongs filtering to commits/execution runs and personal-repository filtering to CLI/AI-tools data. (PDM-3859, PDM-3862)
  • v2 commit/execution endpoints matched on raw remote URL with accurate project-membership checks. (PDM-3864)
  • New per-project daily activity endpoint for departments; removed unused materialized view. (PDM-3873)
  • Unified CLI dashboard label for PROCESS_FALLBACK. (PDM-3877)
  • Fixed race conditions and idempotency issues in task-status create/delete. (PDM-3882)
  • Fixed leaderboard/project widget inconsistency with department indicators. (PDM-3885)
  • New personal activity-segments endpoint powering the hour/day task gantt view; AI source case normalization. (PDM-3891)
  • Filter Task Flow tasks by team membership. (PDM-3909)
  • Aligned browser-data browsing time calculation with activity indicators. (PDM-3921)
  • Block application startup without a valid company token. (PDM-3931)
  • Task lookup by task key endpoint. (PDM-3953)
  • Guard SERVER_URL updates on cloud deployments. (PDM-3955)
  • Default employee activity sorting, with owners prioritized; raw employee-role constants exposed. (PDM-3958, PDM-3960)
  • Restricted employee/role mutation permissions. (PDM-3964)
  • Added activity-segment totals and a cross-tracker status-progress-over-period endpoint. (PDM-3972, PDM-3974)
  • Bitbucket webhook fixes: stripped embedded username before cloning, x-token-auth used for Cloud auth, stale webhooks cleaned up on reconnect, cyclic/runaway pagination now fails loudly instead of returning partial data. (PDM-3979, PDM-3980)
  • Removed dead first-commit-SHA ownership check, superseded by remote-URL matching. (PDM-3982)
  • Fixed branch-page metrics and branch-line attribution; bounded manual time deltas by activity gap. (PDM-4003, PDM-4007)
  • Aligned employee activity calculation with indicators. (PDM-4006)
  • Serialized concurrent git file-history saves to avoid conflicts. (PDM-4021)
  • Stopped LDAP sync from overwriting a manually-set employee avatar. (PDM-4022)
  • Fixed Bitbucket fork association being dropped, breaking department linkage. (PDM-4026)
  • Bitbucket and Azure diff/branch comparisons now fetch via API instead of cloning entire repositories, with correct first-hunk-line counting. (PDM-4030, PDM-4033, PDM-4034, PDM-4035)
  • Prevented duplicate Git projects from being created across departments. (PDM-4043)
  • Defensive pagination for GitLab MR notes on older GitLab versions, plus general polling/rollout hardening. (PDM-4045)
  • Prevented poison CLI payloads from being retried indefinitely. (PDM-4046)

Web / backoffice

  • Excel export added alongside PDF export for reports, with styled workbook output. (PDM-3987)
  • Contributors widget added to the issue detail page; issue dependency graph migrated to ReactFlow. (PDM-3753)
  • Reusable task chronology component and a Finance Task Cost visualization widget. (PDM-3756)
  • Employees ("Users") page and Admin Panel access restored, gated to company Owner/Maintainer, viewer access scoped by tenant vs. department. (PDM-3840)
  • Teams overview dashboard widget with live team cards (manager, project links, activity). (PDM-3854)
  • Employee metrics dashboard rebuilt with a new widget layout, including a unified activity chart. (PDM-3977)
  • Task detail navigation switched to URL search params instead of global state. (PDM-4015, PDM-3788)
  • Task-flow URLs now use the human-readable task key instead of the internal ID. (PDM-3953)
  • Department navigation switched from global state to URL query parameters. (PDM-4048)
  • Backlog: avatar + full name in author/assignee columns, a "time in current status" column, and a custom toast (with link and key copy) on task creation. (PDM-3949, PDM-3946, PDM-4049)
  • Backlog table scrollbar offset fixed to stay visible during sticky positioning. (PDM-4048)
  • Backlog and board loading indicators added; interactions disabled during task-status transitions to prevent duplicate submissions. (PDM-3841)
  • Backlog queries invalidated after task mutations to keep data consistent; create-task validation improved. (PDM-3926)
  • Employee board: tag visibility restored in the filter widget, default sort + active-status filter, dynamic department tab counters, status filter on the users table (defaults to active). (PDM-4052, PDM-4015, PDM-3835)
  • Salary rate actions and menu options restricted to finance users. (PDM-4014)
  • Employee avatar/email fields made optional in select components where the employee context requires it. (PDM-4019)
  • Employee day-analysis modal: adaptive sizing and auto-run of the activity analysis on dashboard load. (PDM-3973)
  • Activity heatmap switched to a 5-level GitHub-style color palette with a matching legend. (PDM-3998)
  • Consistent activity-based coloring across stacked charts, via a shared color-mapping utility. (PDM-3999)
  • Browsing-activity widgets: updated headings/spacing, plus a 1800-second floor before an item counts toward browsing metrics. (PDM-4001)
  • DORA metrics: an "all time" date range preset and default period. (PDM-3831)
  • Date range selection is now stored per route; a reset-to-30-days button was added to the date range selector. (PDM-3996, PDM-3869)
  • Department name added to the metrics page title; productivity chart labels renamed and localized. (PDM-3993, PDM-3992, PDM-3927)
  • Team analytics: refined productivity split table and updated AI/productivity metrics. (PDM-3995)
  • Team Metrics is now the default landing page. (PDM-3906)
  • Fixed team routing in department workload and leaderboard views. (PDM-3847)
  • Team-activity and teams queries reset when a team leader's role changes. (PDM-3890)
  • Department metrics: "others" modal, date range, and project flagging added. (PDM-3887)
  • YouTrack set as the default integration and moved to the primary position in integration navigation. (PDM-4011)
  • Integration status indicator: fixed navigation target and simplified tooltip copy; other integration tooltips rewritten with setup guidance. (PDM-4032, PDM-3930)
  • Teams/Zoom integrations switched to client-credentials auth; duplicate Zoom license-permission alerts fixed. (PDM-3819)
  • Google auth added as a login/registration option for white-label deployments. (PDM-3797)
  • Rate limiting and blocking dialogs added for repeated password-recovery and login attempts. (PDM-3811)
  • Fixed contributor avatars not rendering; MiniLineChart gained secondary-series support; StackedBarsChart can hide specific activity bars and accepts a custom value formatter. (PDM-3917, PDM-3845, PDM-3818, PDM-3852)
  • Fixed breadcrumb arrow spacing in Firefox; removed the branch icon from the task title row and the employee tab from dashboard widgets. (PDM-3907, PDM-3829)
  • Gantt timeline headers now show tooltips. (PDM-3789)
  • Scrolling enabled in the issue dependency graph; node/edge coloring by depth with hover/active states. (PDM-3787, PDM-3791)
  • Task description validation fixed in the create-task flow; blocking-task indicators removed from task cards; task-flow store filter for assigned tasks corrected. (PDM-3779, PDM-3759, PDM-3739)
  • Granular permissions for task restoration; organization-level "estimate required" setting enforced with a warning at task creation. (PDM-3628, PDM-3735)
  • Datavisor: fixed a chat-stream bug, added exponential backoff for chat/console data fetching, console now shows only the most recent chat step, connection statuses display correctly again. (PDM-3772, PDM-3935, PDM-3933, PDM-3951)
  • Sidebar is now hover-expandable. (PDM-3935)
  • Card-flip interactions replaced with explicit toggle buttons for clearer affordance. (PDM-3928)
  • MCP widgets migrated from direct cache access to useQuery hooks with proper loading states. (PDM-3879)
  • Circle widgets: configurable empty-state height and refined chart styling; task-progress view gained a custom empty state. (PDM-4038)
  • Plugin install modal: scrolling constraints and copy fixes; tech-stack chart loading deferred until other dashboard queries settle. (PDM-4042, PDM-3813)
  • Plugin popup default visibility and styling updated; sidebar popup now defaults to closed. (PDM-3820, PDM-3828)

Download Release:

  • PanDev Metrics Core 5.9.0: docker pull pandevofficial/pandev-metrics:5.9.0
  • PanDev Metrics Web 2.9.0: docker pull pandevofficial/pandev-metrics-backoffice:2.9.0