StaleTranslationRule class
Flags translations whose stored @key.source_hash no longer matches the
current English source — i.e. the source changed after the translation
was written, so the translation is potentially out of date.
This is the change-half of the sync loop. It only fires for translations
that carry a source_hash (tracked provenance); untracked translations
are silent, so adopting the feature never floods an existing project.
Warning severity (soft by default; promotes under --strict, so CI gates
on it). Resolved by re-translating (dialect translate — which refreshes
the hash) or by locking the value in dialect serve if it's still correct
despite the source wording change (locking re-stamps the hash). It is not
--ack-able: staleness is a fact about provenance, not a heuristic false
positive — the resolution is to refresh, not to silence.
Constructors
- StaleTranslationRule()
-
const
Properties
- defaultSeverity → IssueSeverity
-
Default severity. May be overridden per-issue.
no setteroverride
- hashCode → int
-
The hash code for this object.
no setterinherited
- name → String
-
Stable rule identifier (snake_case). Used by the report formatter
to group findings and by users to silence/ack via state file
(post-v1.0).
no setteroverride
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
Methods
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
run(
DialectProject project) → List< Issue> -
Inspect
projectand return findings. May return an empty list. Should NOT throw — turn unexpected conditions into Issues so the report surfaces them rather than crashing.override -
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited