Skip to content
UPG is in early alpha. The specification is still evolving and may change between versions.
Tools/Workspace & Portfolios/diff_classification

diff_classification

Show what MOVED on the competitive classification landscape: each competitor reclassification (from one classification_value to another on an axis) since a date. Reads the append-only reclassification history auto-recorded at the classify-write chokepoint, so "did AEM move from integrated to agentic" is one call instead of in-head reasoning. Returns transitions with resolved titles (competitor, from, to), sorted newest first. Pairs with `list_portfolio_cross_edges` freshness (which decides WHEN to re-assess); this surfaces WHAT changed. Empty when nothing moved or no history exists. Read-only.

Workspace & Portfoliosatomic (read-only). Reads the portfolio document only; never mutates.

Arguments

productstringoptional

Restrict to reclassifications of competitors owned by this product (matched on the competitor id product prefix).

competitorstringoptional

Restrict to one competitor by its qualified id (e.g. p_rival/n_acme).

sincestringoptional

ISO date. Only transitions observed on or after this date (e.g. 2026-06-01). Omit for all history.

Returns

Shape
{ product?, competitor?, since?, total, transitions: Array<{ signal_id, competitor, competitor_title?, axis, from_value, from_title?, to_value, to_title?, observed_at, confidence?, observed_by? }> }
, newest first.
Empty transitions when nothing moved or no history exists.