Skip to content

Work Tracking Cubes

These cubes provide direct access to work tracking data from your connected providers (GitHub, Jira, etc.). Unlike the flow cubes which use pre-computed materialized views, these cubes query live tables for real-time data.

Source Table: issues Description: Work items and issues tracked across GitHub, GitLab, Jira, and other platforms.

DimensionTypeDescription
idstringUnique issue ID
providerstringSource provider (github, jira, etc.)
numbernumberIssue number
titlestringIssue title
statestringCurrent state (open, closed)
typestringIssue type (feature, bug, chore, incident, discovery)
authorUsernamestringAuthor’s username
assigneeCountnumberNumber of assignees
commentCountnumberNumber of comments
createdAttimeWhen created
closedAttimeWhen closed
firstResponseAttimeFirst response timestamp
MeasureDescription
countTotal issues
openCountOpen issues
closedCountClosed issues
featureCountFeature issues
bugCountBug issues
choreCountChore issues
incidentCountIncident issues
discoveryCountDiscovery issues
MeasureDescription
avgLeadTimeDaysAverage time from created to closed
medianLeadTimeDaysMedian time from created to closed
avgBugLeadTimeHoursAverage bug resolution time
avgDiscoveryLeadTimeDaysAverage discovery cycle time
medianDiscoveryLeadTimeDaysMedian discovery cycle time
p90DiscoveryLeadTimeDays90th percentile discovery time
MeasureDescription
avgFirstResponseDaysAverage time to first response
medianFirstResponseDaysMedian time to first response
avgDiscoveryFirstResponseDaysAverage first response on discoveries
MeasureDescription
plannedCountFeatures + chores + discoveries
unplannedCountBugs + incidents
plannedPercentage% planned work
unplannedPercentage% unplanned work
MeasureDescription
openDiscoveryCountOpen discoveries
closedDiscoveryCountClosed discoveries
discoveryCloseRate% discoveries closed
discoveryValidationRate% validated into features
discoveryDiscardRate% invalidated or discarded
validatedDiscoveryCountValidated discoveries
invalidatedDiscoveryCountInvalidated discoveries
featuresFromDiscoveriesFeatures created from discoveries
discoveryQualityIndex% validated features shipped
  • Sprint Planning: Track open issues by type
  • Triage Efficiency: Measure first response times
  • Work Mix Analysis: Compare planned vs unplanned work
  • Discovery Process: Measure validation rates

Source Table: pull_requests Description: Pull requests and merge requests tracked across GitHub, GitLab, and other platforms.

DimensionTypeDescription
idstringUnique PR ID
providerstringSource provider
numbernumberPR number
titlestringPR title
statestringCurrent state (open, closed)
mergedstringWhether merged (‘true’/‘false’)
isDraftstringDraft PR flag
authorUsernamestringAuthor’s username
headBranchstringSource branch
baseBranchstringTarget branch
additionsnumberLines added
deletionsnumberLines deleted
changedFilesnumberFiles changed
commitsnumberNumber of commits
reviewerCountnumberNumber of reviewers
commentCountnumberNumber of comments
createdAttimeWhen created
mergedAttimeWhen merged
firstReviewAttimeFirst review timestamp
firstApprovalAttimeFirst approval timestamp
MeasureDescription
countTotal PRs
openCountOpen PRs
mergedCountMerged PRs
closedCountClosed PRs (not merged)
draftCountDraft PRs

Cycle time = PR created → PR merged

MeasureDescription
avgCycleTimeDaysAverage cycle time
medianCycleTimeDaysMedian cycle time
p90CycleTimeDays90th percentile
avgCycleTimeHoursAverage in hours
medianCycleTimeHoursMedian in hours

Review time = PR created → First review

MeasureDescription
avgReviewTimeDaysAverage time to first review
medianReviewTimeDaysMedian time to first review
avgReviewTimeHoursAverage in hours
medianReviewTimeHoursMedian in hours

Approval time = PR created → First approval

MeasureDescription
avgApprovalTimeDaysAverage time to approval
avgApprovalTimeHoursAverage in hours
medianApprovalTimeHoursMedian in hours
avgApprovalToMergeMsApproval to merge time
medianApprovalToMergeHoursMedian approval to merge
MeasureDescription
totalAdditionsTotal lines added
avgAdditionsAverage lines added per PR
totalDeletionsTotal lines deleted
avgDeletionsAverage lines deleted per PR
totalChangedFilesTotal files changed
avgChangedFilesAverage files per PR
totalCommitsTotal commits
avgCommitsAverage commits per PR
MeasureDescription
medianPrSizeMedian PR size (lines)
p90PrSize90th percentile size
smallPrCountPRs < 400 lines
largePrCountPRs >= 400 lines
  • Code Review Efficiency: Track review and approval times
  • PR Size Analysis: Identify oversized PRs
  • Merge Rate: Compare merged vs closed PRs
  • Team Velocity: Track throughput over time

Source Table: deployments Description: Deployments tracked across GitHub Actions, GitLab CI, and other platforms.

DimensionTypeDescription
idstringUnique deployment ID
providerstringSource provider
refstringGit ref (branch/tag)
shastringGit commit SHA
environmentstringTarget environment
taskstringDeployment task
currentStatusstringCurrent status
isProductionstringProduction flag (‘true’/‘false’)
isTransientstringTransient deployment flag
creatorUsernamestringWho triggered it
createdAttimeWhen triggered
currentStatusUpdatedAttimeLast status update
MeasureDescription
countTotal deployments
productionCountProduction deployments
stagingCountStaging deployments
successCountSuccessful deployments
failureCountFailed deployments
pendingCountPending deployments
MeasureDescription
productionSuccessCountSuccessful production deploys
productionFailureCountFailed production deploys
MeasureDescription
changeFailureRate% failed deployments (all)
productionFailureRate% failed production deployments
  • Deployment Frequency: Track deploys over time
  • Environment Comparison: Compare staging vs production
  • Failure Analysis: Monitor failure rates by environment
  • Release Tracking: Correlate deployments with releases

All three cubes support these relationships:

JoinDescription
ProjectsFilter by project
TeamsFilter by team (via project-team links)
UsersFilter by author/creator

Issues by team:

measures: [Issues.count, Issues.openCount]
dimensions: [Teams.name]

PR cycle time by project:

measures: [PullRequests.medianCycleTimeDays]
dimensions: [Projects.name]

Production deployment success rate:

measures: [Deployments.productionCount, Deployments.productionFailureRate]
dimensions: [Deployments.environment]
filters: [{ member: "Deployments.isProduction", operator: "equals", values: ["true"] }]