# RolePrep Changes

Notable changes for people already using RolePrep.

## Unreleased

### Added

- Scheduler worker runs now show the captured search snapshot directly in the run details, with links to the related HTML, cards JSON, and run report artifacts.
- Learning guides and market insights now show which model generated each result.
- Learning guide metadata is parsed consistently so existing generated guides can display their model information.
- LinkedIn search profiles now include a language selector so runs can keep global results or filter to English job descriptions.
- LinkedIn search profiles now support multiple enabled search rows for different query/location combinations in the same run.
- Market trend collection can now track LinkedIn past-day result counts for configured role queries and regions without importing applications.
- A new Trends page and Home trend-count panel show the latest market demand signals from those configured trend profiles.

### Changed

- Removed the application-page search evidence panel so the Applications view stays focused on tracked jobs and application artifacts.
- Aligned Learning and Insights table metadata around status, created date, and model information.
- Insights now use created date consistently for filtering, sorting, and display.
- Scheduler worker rows now show a search funnel so repeated runs explain raw cards, viewed skips, candidates, new work, and known jobs.
- Scheduler now supports application-search and market-trend modes, with labels that clarify whether the run is processing candidates or trend profiles.

### Fixed

- Scheduler run details now attach the right search artifacts to each worker run.
- Model labels are normalized so Codex-backed generations use concise labels such as `codex-default` or `codex-gpt-5.5`.
- LinkedIn search ingestion now skips cards marked `Viewed` and uses stable job identities so repeated search URLs do not create hidden duplicate application rows.
