Does a dependency remediation clock start at advisory publication or at first scan detection?
answer
- what question is the number answering?
- exposure versus responsiveness
- an unscanned service never breaches
- two spans, two different owners
- merged is not deployed
basics
~20 sPublication measures real exposure — how long a known flaw ran in production. Detection start hides scanning latency, because a slow or missed scan silently rewinds the clock. Mature programs record both timestamps and drive the deadline from publication.
solid answer
~50 sThe two definitions answer different questions, and only one answers what an auditor or customer is actually asking: "how long were you running a known-vulnerable version?" That is publication-based. Detection-based clocks are kinder to teams — they never charge you for time before you could have known — but they make every scanning gap invisible, because a lagging advisory feed, a missed weekly scan or a service that dropped out of coverage all reset the clock rather than showing up as a breach. The workable answer is three timestamps per occurrence: advisory publication, first detection in your estate, remediation. Drive the deadline from publication, and report publication-to-detection separately, because it has a different owner — the team running scanning, not the team owning the code. And define it once and change it in the open: silently re-baselining invents or erases a month of breaches.
go deeper
Know that a remediation deadline needs a defined starting event, and that the two obvious candidates — when the advisory went public and when your scanner first saw it — produce very different numbers.
Explain what each start point measures and what detection-start conceals: scan cadence, coverage gaps and stale advisory data. Be able to state where the clock legitimately stops.
Show you have operated this: decompose the interval into publication-to-detection and detection-to-remediation, assign each to the team that can actually move it, and handle late introduction, revised ranges and suppression explicitly.
Own the credibility of the published number. Decide the definition once, defend it to auditors and customers, and re-baseline in the open with both figures shown rather than letting a quiet redefinition manufacture an improvement.
## Why the start point is a real argument Everyone agrees the clock stops at remediation and that some deadline applies. Almost nobody writes down where it starts, and the choice moves the reported number more than the deadline itself does. Two candidate starts dominate. **Advisory publication.** The clock starts the moment the vulnerability became public knowledge. This measures *exposure*: the window during which anyone could have known your version was vulnerable and you were still running it. **First detection.** The clock starts when the finding first appeared in your own tooling. This measures *responsiveness*: how fast the owning team acted once told. ## What each choice makes invisible Detection-based clocks have one structural flaw, and it is severe: they charge nothing for the gap between disclosure and discovery. Every source of that gap is a real control failure that the metric now hides — an advisory database that lags, a scan cadence of once a week, a service that fell out of scanning coverage entirely, an artifact that is only scanned at build time and has not been rebuilt in five months. In each case the estate was exposed and the metric says the team responded in two days. The pathological version is a service that is never scanned at all: it can never breach a detection-based SLA, because its clock never starts. Publication-based clocks have a fairness flaw that is real but smaller: they charge teams for time in which they could not have acted. A team can be handed a finding that is already twenty-five days into a thirty-day window through no fault of its own. Handled naively this destroys the metric's credibility with engineers, who correctly point out that they are being scored on something outside their control. ## The resolution: split the metric by owner The fix is not to pick one and live with the distortion — it is to notice that the interval decomposes into two spans with two different owners: - **publication → first detection** is owned by whoever runs the scanning platform: coverage, cadence, and advisory-feed freshness; - **first detection → remediated** is owned by the team that owns the code. Drive the *deadline* from publication, because that is the number describing your actual risk and the number you would have to stand behind externally. Report the two spans separately, so a breach lands on the desk that can fix its cause. A program that only reports the second span will spend years with excellent numbers and a scanning estate quietly rotting. ## The cases that need a written rule **Late introduction.** A service adopts a version that was already publicly vulnerable, months after publication. Starting that occurrence's clock at publication is meaningless — there was no exposure before the dependency existed in the service. Start the occurrence clock at introduction. But note that adopting an already-vulnerable version is a distinct control failure, and the right treatment is to block it at intake rather than to log it as a fast remediation. **Range revision.** An advisory is updated to widen the affected range, so a version you already ship becomes affected weeks after original publication. The honest start is the revision date for the newly-affected versions, not the original publication. **Suppression.** A suppressed finding does not stop the clock. Hiding a finding changes nothing about the exposure, and a program in which suppression pauses the clock will report perfect compliance forever. Only remediation — or a formally recorded, dated decision that closes the item — stops it. **Business days.** Decide explicitly whether the clock runs on calendar or business days. For anything short this is the difference between a comfortable window and an impossible one, and leaving it ambiguous means each team resolves it in its own favour. ## Where the clock stops The stop point deserves the same rigour as the start. Merging the upgrade is not remediation; neither is closing the ticket. Exposure ends when the fixed version is *running* everywhere the vulnerable one ran — which includes the long-lived environments people forget, and any artifact still available for others to pull. Stopping at merge understates the exposure by exactly the length of your release train, which is a number the release train's owner would rather not publish. ## Defining it once The most damaging thing a program can do is change this definition quietly. Moving from detection-start to publication-start will, overnight, turn a quarter of your closed findings into historical breaches; moving the other way erases them. Both are legitimate changes to make, and both must be made in the open: publish the definition alongside the metric, version it, and when you re-baseline, show both numbers for a period. Otherwise the first person to compare two quarters' reports discovers that the improvement was a definition change, and the whole metric loses the credibility it exists to have.
- Where should the clock stop — merged, released, or deployed?Deployed, everywhere the vulnerable version ran, plus any published artifact others can still pull. Stopping at merge understates exposure by the length of your release train, and stopping at ticket closure measures paperwork. The metric should describe what is running, not what is intended.
- A service adopts an already-vulnerable version months after the advisory. When does its clock start?At introduction into that service, because there was no exposure before the dependency existed there. But treat the adoption itself as a separate control failure: something let a known-vulnerable version in, and the fix is blocking it at intake rather than congratulating the team on a fast remediation.
- Engineers object that a publication-based clock charges them for time before they were told. How do you answer?By splitting the interval. Publication to first detection belongs to the scanning platform's owner — coverage, cadence and feed freshness — while detection to remediation belongs to the code owner. Keep the deadline anchored on publication because that is the real exposure, but report the two spans separately so breaches land where the cause is.
- Does suppressing a finding pause its remediation clock?No. Suppression hides a finding; it does not reduce exposure. If suppression stopped the clock, the fastest route to perfect SLA compliance would be to suppress everything. Only remediation, or a dated decision that formally closes the item, stops it.
saying these in an interview costs you the question
- Starts the clock when a ticket is created
- Stops the clock at merge rather than at deployment
- Lets a suppression pause the remediation clock
- Changes the definition retroactively to improve the number
- Never notices that unscanned services cannot breach
- Leaves calendar versus business days undefined