Book a demo Start for free

Revision Tracking

Know which model revision your application depends on.

Track whether your dependency is pinned to an exact revision, follows a mutable reference such as main, or has an unknown revision.

Three revision states

Every dependency you record is classified from the revision you give PinDiff.

  • Pinned example-org/chat-7b revision 3f9a2c1

    This recorded dependency references an exact revision.

  • Floating example-org/chat-7b revision main

    This dependency follows a mutable reference that may resolve differently later. Branches and tags are floating too.

  • Unknown example-org/chat-7b revision not recorded

    PinDiff cannot determine exposure until the revision is known.

Pinned is not a verdict. It means the recorded revision cannot move on its own.

Pinned versus floating

When the upstream repository moves from revision A to revision B, a pinned dependency stays on A. A floating dependency may resolve to B the next time it is downloaded.

UpstreamA → B
Pinned revision=A remains A
Floating revision=main may resolve to B
Example

Change significance is not dependency exposure

Significance describes the upstream change. Exposure describes what that change means for the revision you recorded. PinDiff shows both, separately, instead of a single risk score.

Upstream
Weights replaced
Significance
Critical
Dependency
3f9a2c1
Status
No automatic effect
Exposure
No automatic effect The recorded revision does not automatically move.
Action
Review before upgrading.
Example
Upstream
Weights replaced
Significance
Critical
Dependency
main
Status
Potentially affected
Exposure
Potentially affected A future resolution may retrieve the newer upstream state.
Action
Review the change, or pin an exact revision.
Example

Other exposure outcomes

  • Access and repository changes apply to every revision, including pinned ones. PinDiff marks them potentially affected.
  • A pinned commit that already contains the change is shown as “in your recorded revision”.
  • A tag or a branch other than main shows exposure as not determined. PinDiff observes the default branch, so it checks what the reference currently resolves to instead of guessing.
  • An unknown revision keeps exposure unknown until you record the revision you use.

What PinDiff records for each dependency

Configured revision
The commit, tag, branch or main/latest you record. Each change to it is kept.
Resolved commit
The commit that revision pointed to when PinDiff last resolved it with Hugging Face.
Revision type
Pinned, floating or unknown, derived from the configured revision.
Last resolution
When the revision was last resolved, and why if it could not be.
Latest upstream state
The default-branch head PinDiff last observed.
Relevant upstream changes
Material changes since your pinned commit, once PinDiff has observed that commit.

This is the recorded dependency revision. PinDiff does not know what is deployed unless you record it.

Next step

The change matters to your dependency. What exactly changed?

Change History & Diffs compares the observed states on either side of the change, category by category.