ERD_INDEXERS_CHECKLIST.md still leaves the origin-only error logging rules unchecked even though the indexer stack already carries structured code and sqlstate fields through typed errors.
crates/revaer-app/src/indexers.rs was re-logging propagated DataError values while also converting them into service errors, which duplicated origin logs and violated AGENTS.md.
The next efficient step is to make the app-layer mapper functions pure translations so origin logs remain singular while callers still receive stable service error kinds and structured context.
This change reduces duplicate logs by keeping error emission at the actual failure origin while preserving structured context on returned service errors.