# Feature Specification: Localization change detection across all reader-visible surfaces

**Feature ID**: 001
**Status**: draft

## Overview

Detection watches one of eight categories of reader-visible content, so a writer can change an
interface component, a navigation label, or a rendered data file and receive no localization
signal at all.

## Functional Requirements

- **FR-001** When source content changes, the detector shall report every affected reader-visible
category: prose pages, interface text, navigation labels, structured data rendered as interface
text, shared content fragments, and images.
- **FR-002** When prose changes, the detector shall identify the affected content units
individually and shall not report units whose rendered text is unchanged.
- **FR-003** When a heading is renamed, the detector shall report one rename rather than an
unrelated removal and addition.
- **FR-004** Where a change affects only whitespace, punctuation, sample code, or non-rendering
configuration, the detector shall report that no translation work is required.
- **FR-005** If a detected change cannot be assigned to a known category, then the detector shall
report it as unclassified rather than discard it.


## Acceptance Criteria

- **001-localization-change-detection-AC-1** Editing one paragraph reports exactly one content unit and no others.
- **001-localization-change-detection-AC-2** Adding reader-visible text to an interface component reports a translation
requirement; today it reports nothing.
- **001-localization-change-detection-AC-3** Renaming a heading reports one rename, not one removal plus one addition.
- **001-localization-change-detection-AC-4** Changing only a fenced code sample reports no translation work.
- **001-localization-change-detection-AC-5** A change touching all eight categories at once reports all eight.


## Deferred Edge Cases

- **DEF-1** Images containing source-language text are reported but never edited. Deferred:
image localization has no owner or toolchain.
- **DEF-2** Shared content fragments are detected but unused in the localized set today.
Deferred: no fragment is currently included by an in-scope page.
- **DEF-3** Translating structured data that renders as interface text. Deferred 2026-10-01:
these strings name fields a developer matches against a request payload, and they stay in the
source language. Detection is required; translation is out of scope.