Skip to content
CAI
Software that uses CAICheck a score

linkedin/LiFT

55.3

Adequate · 20 September 2026

2.8k

lines of production code

Scala

primary language

1

measurement over time

CAI band scale
CAI lens gauges

What this system is

This system is the LinkedIn Fairness Toolkit (LiFT), a Scala and Spark library designed to measure fairness and mitigate bias in machine learning workflows. It provides capabilities for evaluating dataset and model fairness through various statistical metrics, including divergence measures and permutation tests, while also offering utilities for debiasing ranking systems. The toolkit supports both dataset-level and model-level analysis to help identify and address disparities between protected groups.

Features

Initial release of the Lift library for measuring dataset and model fairness metrics

This change introduces the core components of the Lift library, enabling users to evaluate fairness in both datasets and machine learning models. It adds command-line argument parsers and driver programs for measuring dataset-level metrics (such as distance and divergence measures like KL divergence, Jensen-Shannon divergence, and skew) and model-level metrics (including permutation tests for statistical significance of differences between protected groups). The library also provides utility objects for statistical operations, including bootstrap sampling, confusion matrix calculations, and position-bias estimation and debiasing for ranking systems.

lift · high confidence

Initial release of the LinkedIn Fairness Toolkit (LiFT)

This change introduces the initial version of the LinkedIn Fairness Toolkit (LiFT), a Scala/Spark library for measuring fairness and mitigating bias in machine learning workflows. The release includes the core library code, build configuration (Gradle), and comprehensive documentation covering dataset fairness metrics, model fairness metrics, and an equality-of-opportunity mitigation algorithm. It also establishes the project's contribution guidelines, BSD 2-Clause license, and CI/CD infrastructure via Travis CI and Shipkit.

(repo-wide) · high confidence

Dependencies

Initial project setup with Gradle build and dependency configuration

This change introduces the initial build infrastructure for the LiFT project using Gradle. It configures the build to support multiple versions of Scala and Spark, with default versions set to Scala 2.11.8 and Spark 2.3.0. The dependencies include Apache Spark components (core, sql, mllib, avro), Scopt for command-line parsing, and testing frameworks (ScalaTest, TestNG). The build also sets up publishing capabilities to Maven Central via Sonatype and LinkedIn Artifactory, along with release automation using Shipkit for versioning, changelog generation, and GitHub releases.

(dependencies) · high confidence

Upgrade Gradle wrapper to version 6.8.3

The Gradle wrapper has been updated to use Gradle 6.8.3, ensuring that builds are executed with this specific version of the build tool. This change standardizes the build environment and aligns with the project's upgrade to newer tooling.

gradle · high confidence

Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.

How this codebase got here

Baseline

  • First survey — no prior run to compare against. CAI 55.

Lenses

  • Code Health 99
  • Architecture 100
  • Maturity 39
  • Readiness 55
  • Security 72

Changes since last survey

  • 18 commits — 16 feature/other, 2 fixes

By area

  • (root) — 13 commits
  • lift/src — 3 commits
  • (repo) — 1 commit
  • .github/workflows — 1 commit

Notable commits

  • fix: Clarify uidProtectedAttributeField. Fixes #6
  • fix: Fix POM license issue
  • change: 0.1.2 release + release notes updated [ci skip]
  • change: 0.1.3 release (previous 0.1.2) + release notes updated [ci skip]
  • change: 0.1.4 release (previous 0.1.3) + release notes updated [ci skip]
  • change: 0.2.0 release (previous 0.1.4) + release notes updated [ci skip]
  • change: 0.2.1 release (previous 0.2.0) + release notes updated [ci skip]
  • change: Add Travis CI build status badge
  • change: Initial commit
  • change: Initial empty repository
  • change: Setup Shipkit and Travis CI
  • change: Support multiple versions of Scala + Spark
  • change: Update README.md with pointers to LinkedIn's Artifactory and Maven Central (#9)
  • change: Update Readme to document JCenter details (#2) [ci skip-compare-publications]
  • change: Update computeJoinedDF to take a DataFrame (#3)
  • change: Upgrade GitHub Actions for Node 24 compatibility (#11)
  • change: Upgrade Shipkit and Gradle, and move off JCenter (#8)
  • change: mitigation: equality of opportunity (#7)

Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.

Survey your own repository

linkedin/LiFT was measured the same way every project in this corpus was: the same rubric, at a pinned commit, with the result published in full. Point a surveyor at a repository you know and see whether you agree with it.

About this page

  • The score is its most recent published measurement, taken on 20 September 2026 at a pinned commit. It is not a live figure and does not change until the project is measured again.
  • Measured at commit b4fe810f202f5fe21982e1286fda60052f48026c — the exact code this score is about.
  • Scored under rubric-2026.09.15 — the same rubric and the same method as every other entry in this index.
  • Measured by watchdog.canine.dev using codehealth-analyzer preprod-b51f968c9b10.