Engineering AI agent · Dependency upgrades

Dependency-Upgrade AI Agent

Wait on a version before it moves — who published it, what changed beneath the number, which licence it now carries — then hold the bump for the named engineer who merges it.

Typical delivery
4–6 weeks
Deployment
Your stack
Named engineer
Version aged
After launch
Agent Care

What this agent does

Prepares the bump, never merges it

In

  1. 01

    A version publishes, and the account behind it is one the registry never verified.

  2. 02

    A bump is opened minutes after a publish, and the advisory that would stop it runs on human time.

Reason

  1. 03

    A release tarball is fetched, and the xz backdoor sat there and never in the git repository.

  2. 04

    A build goes green, and the xz payload wanted a deb or rpm path a test matrix never enters.

  3. 05

    A minor bump lands, and Redis 7.4 carries RSALv2 where 7.2 carried BSD-3-Clause.

Decide

  1. 06

    A version carries provenance, and npm says that does not guarantee it has no malicious code.

  2. 07

    A component is integrated, and CRA Art. 13(5) puts the due-diligence duty on the manufacturer.

Out

  1. 08

    A defect arrives through an upgrade, and PLD Art. 11(2) leaves not upgrading no safer.

  2. 09

    Execute write actions only inside the approval boundaries agreed during implementation.

Product statement

Preparing, recording and holding the bump belong to the agent. The merge belongs to a named engineer, who takes the version into the product and answers for it once it has shipped.

Example workflow

One version, registry to merge

  1. 1Version publishedRegistry release, advisory, end-of-life notice or scheduled dependency scan
  2. 2Publisher context assembledThe publishing account, the release history, the age of the version and the licence it carries
  3. 3Bump preparedThe version range, the changed tree, the licence delta, the provenance state and confidence
  4. 4Controls appliedPublisher checks, licence-delta checks, soak-period checks, tree-depth checks and confidence

No human action required

Stages 1 to 4 run unaided, and nothing reaches the product at any of them — the agent is preparing, and the engineer lane opens at the merge gate.

5DecisionSplits at the merge gate
Soak period served

Goes to the named engineer to merge.

Anything fresh

Adds a platform owner read first.

Engineer merge

The bump is held with its publisher record, its licence delta and what the controls returned.

Merge · Pin · Send to platform review

Merged — by the named engineer

  1. 6Lockfile and inventory records updatedOnly where write access and merge policy allow it
  2. 7Outcome evaluatedSoak compliance, reverted merges, engineer corrections and what production found after the version shipped

Corrections

Each engineer rejection is counted in the evaluation.

What should not run autonomously

Human approval stays in control

Outside the boundary — human approval required

8 items

  • Taking a new version into a shipped product.
    • Accepting a licence change on behalf of the company.
    • Deciding that a publisher can be trusted.
    • Judging whether an upgrade is needed for safety.
  • Automation boundary

    Agent acts unaided

    • ✓Record who published the version and what changed.
    • ✓Hold a freshly published version for the configured soak period.
    • ✓Compare the licence a version carries against the one before it.
    • ✓Hold the bump for the named engineer who merges it.

    Nothing reaches the product except by a named engineer, inside the agreed boundaries.

    • Vouching for code the company did not write.
    • Granting the credential that publishes a package.
    • Waiving the soak period on a fresh version.
  • Changes to upgrade rules or merge thresholds.

Example output

One version bump, annotated

The vulnerability-autofix sibling answers a named finding; this one moves a version because it is old, which is how the supply-chain attacks that matter arrive. Below is one bump as the agent leaves it.

Upgrade proposal · single dependency

Illustrative example
Dependency
HTTP client, direct dependency
Recorded as
Raised one patch release above the pin
Licence
Licence unchanged
Evidence of record
Registry record, 3 August 2026
Confidence
Held unmerged
Held for
The named engineer, by name

As received

Taken from the registry and the lockfile — the agent records custody of this version, not its contents.

What the record holds

  • Publisher account
  • Release age
  • Licence identifier

Why no merge here

Taking a version into the product is an act a named engineer owns.

What the score decides

Below the configured threshold a bump gets a platform read before the engineer sees it.

Action

MergePinSend to platform review

Value

Where AI adds value

The same four claims, placed at the point in the workflow where each one applies.

Where the value lands

Value 01 – 04

Each version

From the registry that served it

03Custody

Which rules reach an upgrade

The maintainer who published this owes nothing — MIT disclaims it and CRA Art. 64(10) exempts stewards from fines; the duty sits with the manufacturer who integrated the component.

01Approved path

A stranger wrote this

When a self-replicating worm ran through the registry in September 2025, the federal mitigation was to pin to versions published before it — the advice was to stop upgrading.

02Human review

What was checked, and not found

No law found requires a lockfile, a dependency policy, a maximum version age, a reading of the upgrade diff, licence-change detection or provenance verification, and running an end-of-life version is nowhere unlawful in itself. The nearest version-age control is a configuration key.

04

Build an evidence trail

The version, the publisher who signed it and the engineer who merged it stay together.

Integrations

Typical integrations

Five system groups connect to the same agent. Which of them are in scope is decided in discovery.

  • Package registries

    • npm
    • PyPI
    • Maven Central
    • crates.io
    • NuGet
    • RubyGems
    • Go
  • Upgrade and bump tooling

    • Renovate
    • Dependabot
    • Snyk
    • Mend
    • in-house bump bots
  • Build and lock state

    • package-lock
    • yarn.lock
    • pnpm
    • Gradle
    • Maven
    • go.sum
    • uv.lock

Agent

Dependency upgrade

  • Reads the registry
  • Records the publisher
  • Holds the merge
  • Inventory and evidence

    • SBOM stores
    • dependency graphs
    • Sigstore
    • provenance attestations
  • Observability & evaluation

    • OpenTelemetry
    • Langfuse
    • Supported monitoring/evaluation sources

Integration availability depends on the client's existing systems and API access.

Agent controls

Six catches between the registry and the merge

Six catches along one chain, the last the strongest. What passes on is drawn in the map below.

L6 · Outermost — last line of defence

Inward → L1 · closest to the model

L6Rollback / safe modeNarrow the agent to listing available versions when evaluation or production signals degrade.Roll back
L5Version monitoringTrack model, prompt and upgrade rules, and note the version each bump was prepared under.Track
L4TraceabilityRecord each bump, the publisher behind it, the licence it carries and every read of the record.Record
L3Engineer mergeHold the bump for a named engineer; the hold governs the merge, not whether the code inside is sound.Gate
L2Publisher guardrailsTest each version against the publisher and licence on record, and return a bump where either has moved.Restrict
L1Confidence thresholdsRoute a freshly published or unattested version to a platform owner read before an engineer sees it.Require review
Model coreBump prepared — the publisher, the version, the licence delta and the tree it changes
L1 – L2
Test whether a bump may stand
L3
Leaves the merge to a named engineer
L4 – L5
Keep the merge and the version behind it
L6
Leaves the version pinned when signals degrade

How Nestack evaluates it

Evaluate the whole upgrade path — not only the version that comes out.

Coverage runs the whole depth of the workflow, and every layer is cut by slice.

Surface — the version the product ships

  1. E1Final-output evaluationDid the bump record the publisher and the licence it was actually taken from?
  2. E2Step-level evaluationDid the agent read the right registry, the right version and the live upgrade rules?
  3. E3Tool evaluationDid it read and write the correct lockfile and the correct dependency?
  4. E4Confidence calibrationDo low-confidence bumps actually attract more engineer corrections?
  5. E5Slice evaluationHow does performance change across specific ecosystem classes?
  6. E6Business outcomeHow many bumps needed a correction before the engineer merged?

Floor — the product a version ends up in

Failure modes

Where each failure originates in the agent

Seven failure modes, each set where the upgrade first shows it.

Agent lifecycle

Direction of processing →

  1. 01 · Retrieval

    1 mode

    • QZ-03

      Stale registry read

      The version read is not the one now published.

    Stage gathers

    The publisher, the version, the licence and the tree

  2. 02 · Reasoning

    2 modes

    • QZ-04

      Bump asserted, not verified

      A version moves with no publisher record behind it.

    • QZ-06

      Retired upgrade rule read as live

      A superseded merge rule is worked as current.

    Stage proposes

    The publisher, the licence and the changed tree

  3. 03 · Tool / write

    2 modes

    • QZ-02

      Fresh version passed forward

      A bump moves on without the soak period served.

    • QZ-05

      Bump bound to wrong dependency

      The version is written against another package.

    Stage writes

    Only where write access and approval policy allow it

  4. 04 · Output

    1 mode

    • QZ-01

      Merged, publisher unrecorded

      The record shows a merge but not who published it.

    Stage returns

    The version the product ships and a customer runs

  5. 05 · Change / Version

    1 mode

    • QZ-07

      Silent upgrade drift

      A soak period shortens while the stored rule keeps the old one.

    Stage tracks

    Model, prompt, upgrade rules and licence policy

  • Sev-1 · a version merged on no record
  • Sev-2 · a wrong version reaches the product
  • Sev-3 · provenance degrades, bump held back
See the complete Engineering failure-mode catalogue

Affected slices

Fresh versions absorb the corrections

An ecosystem-level provenance figure can read clean while freshly published versions carry most of the bumps held back. Nestack reports the correction rate by ecosystem class, not only in total.

Slice performance — reported separately, not only in aggregate

Illustrative example
SliceFailure rateLiftLift vs. thresholdStatus
Freshly published versions9.9%3.7×Review
Single-maintainer packages7.0%2.6×Review
Transitive tree changes4.4%1.6×Watch
Long-established core libraries1.9%0.7×Normal

Bar: correction-rate lift vs. established-library baseline · scale 0–4.0× · tick marks the 2.0× review threshold

2 of 4 slices over threshold

Evidence-linked improvement

What the merge window cost

A loop ends when the bump merged before anybody looked is a standing case. That suite is what the next upgrade taken is measured against.

Improvement cycle · five stages

Switchback — the path turns at Improve and returns at Learn

  1. 01

    Detect

    Held-bump rate rises on freshly published versions.

  2. 02

    Diagnose

    Forty-two minutes from publish to pull request, and under thirteen from pull request to merge, is read back through the upgrade rules until a single cause remains.

  3. 03

    Improve

    Numbered the change leaves, and the versions that drove it are filed with it.

  4. 04

    Verify

    A single red version case is enough to stop the merge.

  5. 05

    Learn

    The case is kept, and the merge rules are amended in that commit.

  6. Learn → Detect

    The return edge. The next upgrade is taken against a suite one case longer.

Typical build scope

Twelve workstreams across six weeks

The build scope read against the delivery timeline. Week structure follows the six-week plan — discovery, sources, upgrade workflow, evaluation, integration, then production validation and handover.

Workstream

Week 1Week 2Week 3Week 4Week 5Week 6

  1. 01Upgrade discovery and automation-boundary definition.Week 1
  2. 02Registry, forge and lockfile sources.Week 1, Week 2
  3. 03Provenance-verification and licence-policy mapping.Week 1, Week 2
  4. 04Registry-record ingestion.Week 2
  5. 05Publisher binding and licence-delta logic.Week 2, Week 3
  6. 06Confidence scoring and review routing.Week 3
  7. 07Engineer merge workflow.Week 3, Week 4
  8. 08Forge and lockfile integration.Week 5
  9. 09Version and provenance cases.Week 4, Week 5
  10. 10Guardrails and merge-window controls.Week 4
  11. 11Version-trail instrumentation.Week 5, Week 6
  12. 12Deployment, documentation and Agent Care handover.Week 6

12 workstreams · 6 weeks · bar shows the weeks a workstream is active — several run in parallel

Final scope and sequence confirmed in discovery

Engagement tiers

What each tier includes

Rows are the capabilities named in each tier's scope. Higher tiers include everything below them.

Capability✓ in scope · — not at this tierPilotOne ecosystem, one repositoryProductionProduction upgrade cycleAdvancedMultiple ecosystems / estates
Introduced at Pilot
Bump preparation to your upgrade rules✓✓✓
Named engineer merge✓✓✓
Dependency-tree baseline✓✓✓
Introduced at Production
Reporting by ecosystem class—✓✓
Platform review workflow in your systems—✓✓
Approved lockfile write-back—✓✓
Registry-and-forge integration—✓✓
Introduced at Advanced
Multi-registry coverage——✓
Cross-repository upgrade packs——✓
High bump volume——✓
Multi-ecosystem upgrade controls——✓
Build priceFrom $5,000From $8,000Custom quote
Final build price
Confirmed after discovery based on integrations, workflow complexity, bump volume, merge controls and deployment requirements.
Separate from build
Build pricing is separate from recurring Agent Care, which covers managed monitoring, evaluations, incidents and verified improvements after launch.

What we need from you

What you bring, and what we build with it

Each input maps to a piece of build scope and a week in the delivery timeline.

  1. 01Your live repositories and the ecosystems each one depends on

    Dependency capture and upgrade-rule versioning

    Week 1
  2. 02Representative lockfiles, registries and merge history

    Source binding, publisher logic and the dependency baseline

    Week 2
  3. 03Your upgrade cadence and the engineers it names

    Licence-policy mapping, soak periods and the automation boundary

    Week 1
  4. 04Access to relevant APIs, feeds or exports

    Registry, forge and lockfile assessment, then integration setup

    Week 2
  5. 05Merges you would not want audited

    Provenance cases and the failure-mode round

    Week 4
  6. 06What no bump may bring in

    Confidence scoring, review routing, guardrails and merge controls

    Week 3
  7. 07A named engineer who merges the bump

    Engineer merge workflow, then pilot and production validation

    Weeks 5–6

Nothing else is required

Deployment, documentation and Agent Care handover are ours.

Delivery timeline

Four phases across six weeks

Each band takes the width its phase actually costs, which is why week five carries a pair of them.

Phase

W1

W2

W3

W4

W5

W6

  1. DiscoveryW1
  2. BuildW2 – W3
  3. EvaluateW4 – W5
  4. Pilot & LaunchW5 – W6

Week focus

W1Upgrade-workflow discovery, licence policy and the automation boundary

W2Registry and forge integration and the dependency-tree baseline

W3Publisher binding, soak logic and merge controls

W4Evaluation suite, provenance cases and failure-mode testing

W5Lockfile integration, pilot bumps and targeted corrections

W6One dependency quarter run under the platform owner, then Agent Care handover

Reading the band
Each bar runs only across the weeks it is named for, and the doubled fifth week is real.
At the end of W6
When the version record validates, Agent Care takes the agent on.
Duration
Six-week plan shown · typical delivery 4–6 weeks depending on scope confirmed in discovery.

Next step · Engineering AI agent

Build a dependency-upgrade agent around the publisher your last bump never named.

Show us one service and the last dependency bump merged into it. The person you trusted there was a stranger the registry never verified, and the pipeline that carried their code inside was yours. A version that cannot say who published it comes back as a finding.

Typical delivery
4–6 weeks
Deployment
Your repositories
Named engineer
Version aged
After launch
Agent Care available

Nestack Agents · Dependency upgrades

AGT-ENG-07 · Agent Care available after launch

Build a dependency-upgrade agent

Four questions so the call starts from your actual setup — then pick a time that suits you.

About you
Your dependencies

No obligation. We’ll map the workflow, name the automation boundary and tell you if an agent is the wrong answer.