Skip to main content
All Docs
FeaturesagentOS Block ManagerUpdated April 13, 2026

Asset Install Date Tracker & Data Quality Alerts

Asset Install Date Tracker & Data Quality Alerts

Accurate install date records are essential for projected replacement year calculations and reserve fund modelling. When these dates are missing across a portfolio, financial projections become unreliable. v0.13.5 introduces a proactive data quality system that surfaces gaps in the asset register and makes it fast to work through the backlog.

Why install dates matter

The install (or last-replaced) date, combined with the estimated lifespan, drives two critical calculations:

  1. Projected replacement year — the year the asset is expected to require replacement
  2. Remaining useful life — the proportion of lifespan already elapsed, used to contextualise condition ratings

Without an install date, neither calculation is possible, and the asset cannot contribute accurate data to reserve fund models.


Outstanding Data Requests Banner

When assets in the register are missing install dates, an amber banner appears at the top of the asset register view.

⚠ Outstanding Data: 7 assets missing install date
Install dates are essential for projected replacement year calculations
and reserve fund modelling. Additionally, 3 assets are missing estimated
lifespan. 2 assets are missing replacement cost estimates.

[ Lift Mechanism ]  [ Roof Covering ]  [ Fire Panel ]  +4 more    Show missing only ›

What the banner shows:

  • Count of assets missing install dates
  • Secondary counts for missing lifespan and replacement cost fields
  • Quick-access chip buttons linking directly to each affected asset (up to 10 listed; a +N more label appears when there are additional records)
  • A "Show missing only" button to activate the filter instantly

The banner is hidden once the "Missing install date" filter is already active.


"Missing install date" Filter

Click "Show missing only" in the banner, or toggle the filter pill in the toolbar, to narrow the asset list to only records without an install date. An amber filter chip — Missing install date ✕ — is displayed while the filter is active. Click it to clear the filter.

The empty-state message adapts when this filter is active, prompting you to adjust filters rather than suggesting there are no assets.


"No Install Date" Badge in the List

Each row in the asset list now shows an amber No install date badge next to the asset name whenever the installDate field is absent. This allows quick visual scanning of incomplete records without needing to open each one.


Enhanced Install / Last Replaced Detail Card

The Install / Last Replaced card on the asset detail view now communicates far more than just the date.

When an install date is recorded

  • Displays the formatted install date and estimated lifespan (e.g. 25-year lifespan)
  • Shows a remaining useful life progress bar:
    • 🟢 Green — less than 70% of lifespan elapsed
    • 🟡 Amber — 70–89% of lifespan elapsed
    • 🔴 Red — 90% or more of lifespan elapsed
  • Shows the percentage of estimated lifespan elapsed beneath the bar (e.g. 64% of estimated lifespan elapsed)
  • If the estimated lifespan is missing, an amber warning prompts you to add it so the replacement year can be calculated

When no install date is recorded

  • The card border turns amber
  • Displays "Not recorded" in amber text
  • Shows: "Required for reserve fund modelling"

Form Guidance

Both the create and edit forms now include contextual hints on the install date field.

Create form:

Essential for replacement year projection and reserve fund modelling. Missing dates are flagged for follow-up.

The amber note only appears when the field is empty.

Edit form: When the install date field is blank, an inline amber warning reads:

⚠ Required for replacement year projection and reserve fund modelling


API Reference

asset.dataQualitySummary

Fetches a summary of missing critical fields across the portfolio.

Input:

{
  blockId?: string  // Optional: scope to a single block
}

Response:

{
  totalAssets: number;
  assetsWithIssuesCount: number;          // Assets with at least one missing field
  missingInstallDateCount: number;
  missingLifespanCount: number;
  missingConditionRatingCount: number;
  missingReplacementCostCount: number;
  missingBothDateAndLifespanCount: number; // Cannot calculate replacement year at all
  missingInstallDateAssets: Array<{        // Top 10 for quick-access links
    id: string;
    name: string;
    blockId: string;
  }>;
}

asset.listmissingInstallDate filter

The list endpoint accepts a new optional filter:

{
  missingInstallDate?: boolean  // When true, returns only assets where installDate IS NULL
}

This filter can be combined with existing filters (blockId, assetClass, earlyReplacementOnly).


Recommended workflow for clearing the backlog

  1. Open the Asset Register
  2. If the amber banner appears, note the total count of assets with missing install dates
  3. Click a quick-access chip to jump directly to an affected asset, or click "Show missing only" to filter the list
  4. Open each asset, enter the install or last-replaced date, and add the estimated lifespan if known
  5. Save the record — it will disappear from the filtered list once complete
  6. Repeat until the banner clears