Repository navigation
OCL Mapper: remove unused i18n keys, and add the 4 English keys the code uses #2917
Description
Follow-up to #2880. On oclmap main (a59ecf6), 209 of the Mapper's 790 English keys are unreferenced, and the code uses 4 keys that the English catalog lacks.
-
Add these keys to en, es, pt-BR and zh:
common.none(MatchDetailsPanel.jsx),common.saved(MultiAlgoSelector.jsx) andsearch.save_default_filters(SearchFilters.jsx), which show the raw key today;map_project.candidates_legacy_shape(MapProject.jsx), which shows its English default.
oclweb3 already has English wording for two of them:
common.none("None") andsearch.save_default_filters("Save as Default Filters"). -
Remove the unreferenced keys below from all four locales at once. Check each by hand first: search the source for the key's last segment, and run
git log -S'<key>' -- src. -
Optional: 14 more keys appear only in the non-concept column sets of
ResultConstants.js(mappings, repos, orgs, users, URL registry). The Mapper lists only concepts, so these keys can go along with those column sets.
The weekly i18n check (private for now: ocl_online#523) lists any gaps left after the fix.
The 209 unreferenced keys: auth (2), bookmarks (3), common (48), concept (8), custom_attributes (1), dashboard (8), map_project (32), mapping (6), org (6), repo (42), search (17), url_registry (12), user (24)
- auth:
auth.session_expired,auth.update_password - bookmarks:
bookmarks.name,bookmarks.pinned,bookmarks.pinned_repos - common:
common.a,common.about,common.access_level,common.an,common.attribute,common.clear,common.content_summary,common.create,common.created,common.custom_attributes,common.draft,common.for,common.from,common.full_name,common.group,common.highlights,common.history,common.import,common.json,common.languages,common.last_updated_on,common.less,common.manage,common.metadata,common.navigate,common.ok,common.open,common.overview,common.preferred_language,common.private,common.public,common.read_less,common.read_more,common.resolve,common.result,common.select,common.short_code,common.sort,common.statistics,common.subscribed,common.summary,common.target,common.updated_on,common.upload,common.value,common.versions,common.view_all_attributes,common.with - concept:
concept.concept_classes,concept.concepts,concept.datatypes,concept.name_type,concept.name_types,concept.namespace_associations,concept.retired_concepts,concept.tab_bridge_concept_details - custom_attributes:
custom_attributes.add - dashboard:
dashboard.anonymous_heading,dashboard.community_blog,dashboard.create_repository,dashboard.events_scope_sign_in,dashboard.hello,dashboard.no_events,dashboard.take_a_tour,dashboard.welcome_line - map_project:
map_project.ai_assistant_limit_reached,map_project.algorithm_custom_description,map_project.algorithm_custom_label,map_project.algorithm_es_label,map_project.algorithm_llm_label,map_project.auto_match_note_no_counts,map_project.auto_matched,map_project.bridge_terminology_search,map_project.bridge_terminology_search_description,map_project.bulk_clear_selection,map_project.ciel_bridge_terminology_candidates,map_project.custom_match_api,map_project.custom_match_api_description,map_project.delete_this_project,map_project.enable_reranker,map_project.include_retired,map_project.loading_name_locales,map_project.lookup_required,map_project.map_target,map_project.match_api_token,map_project.match_api_token_placeholder,map_project.match_api_url,map_project.match_api_url_placeholder,map_project.ocl_ciel_bridge_algorithm,map_project.ocl_custom_algorithm,map_project.ocl_scispacy_loinc_algorithm,map_project.rows_per_match_api,map_project.save_this_project_to_collection,map_project.scispacy_loinc_search,map_project.select_an_algorithm,map_project.show_more,map_project.target_repo_required_on_load - mapping:
mapping.from_concept_sources,mapping.map_types,mapping.retired_mappings,mapping.sort_weight,mapping.to_concept_sources,mapping.type - org:
org.about_the_org,org.browse_members,org.member,org.member_of,org.org,org.org_have_not_created_public_repos_suffix - repo:
repo.add_concept,repo.autoid_concept_description_external_id,repo.autoid_concept_external_id,repo.autoid_concept_mnemonic,repo.autoid_concept_name_external_id,repo.autoid_mapping_external_id,repo.autoid_mapping_mnemonic,repo.case_sensitive,repo.collection_type,repo.compare,repo.compare_destination_version_disabled_tooltip,repo.compare_origin_version_disabled_tooltip,repo.compare_versions,repo.compositional,repo.contact,repo.content_type,repo.copyright,repo.custom_validation_schema,repo.experimental,repo.hierarchy_meaning,repo.identifier,repo.jurisdiction,repo.locale,repo.locales,repo.manage,repo.no_overview,repo.property,repo.publisher,repo.purpose,repo.refresh_summary,repo.release_status,repo.repo_summary_is_calculating,repo.repo_version_summary,repo.revision_date,repo.source_type,repo.summary_active_concepts_from_total,repo.summary_active_mappings_from_total,repo.summary_concepts_references,repo.summary_mappings_references,repo.summary_released_versions_from_total,repo.version_needed,repo.visibility - search:
search.card,search.confidence,search.display,search.input_placeholder,search.input_placeholder_drawer,search.loading,search.mappings,search.orgs,search.repos,search.score,search.search_all_concepts,search.search_all_site,search.search_this_repository,search.search_this_url_registry,search.table,search.url_registry,search.users - url_registry:
url_registry.add_entry,url_registry.global,url_registry.registry_owner,url_registry.resolve_failed_with_entry,url_registry.resolve_failed_without_entry,url_registry.resolve_failed_without_entry_global,url_registry.resolve_success_with_entry,url_registry.resolve_success_without_entry,url_registry.test_canonical_url,url_registry.test_canonical_url_description,url_registry.url_registry,url_registry.view_canonical_url_registry - user:
user.about_me,user.about_me_description,user.avatar,user.bio,user.company_name,user.copy_api_token,user.copy_token_success,user.edit_my_profile,user.email_address,user.first_name,user.last_login,user.last_name,user.login_and_security,user.my_bookmarks,user.my_organizations,user.name_and_description,user.password,user.profile_update_failure,user.profile_update_success,user.update_avatar,user.user,user.user_has_not_created_public_repos_suffix,user.users,user.your
Activity
ocl-automation commentedon Oct 16, 2026
Automated Triage — 2026-10-16
Decision:
decision/ai-readyType:
type/refactorSignals:
signal/quick-win,signal/low-risk,signal/well-specifiedThe issue lists exact keys, files, locales and a verification method (search the last segment, run git log -S), so it is clear with minor gaps: the wording for the added keys in es, pt-BR and zh is not given, and the optional ResultConstants.js cleanup is left open. The work is mechanical edits across four locale catalogs plus a few components, and a wrongly removed dynamic key would only show a raw key in the UI. The linked audit #2880 is closed, so nothing blocks it. The weekly i18n check (ocl_online#523) is only a later verification, not a need.
Generated by ticket-triage pipeline v3. Model: anthropic/claude-sonnet-5.5 (openrouter).
closes OpenConceptLab/ocl_issues#2917 | Simplification review cuts: l…
paynejd commentedon Oct 17, 2026
Octoad's session worker opened OpenConceptLab/oclmap#107 for this ticket. It's ready for review.
Added the 4 keys the Mapper used without a catalog entry to en, es, pt-BR and zh, and removed 223 unused keys from all four (the 209 listed, plus the 14 only the never-rendered non-concept table columns named, with those columns), with catalog tests.
Codex review passes: 1. Session worker
worker-v0.11, recipelean-loop, flowpublic>public. Runopenconceptlab-ocl-issues-2917-20261017-145015, sessionocl-issu-2917-1017-145015-a1e263.Merge pull request #107 from OpenConceptLab/OpenConceptLab/ocl_issues…
OpenConceptLab/ocl_issues#2917 | Add the four keys the code uses to e…
OpenConceptLab/ocl_issues#2917 | Remove the 209 unreferenced keys fro…
closes OpenConceptLab/ocl_issues#2917 | Keep only the concept columns…