# Task 02: Fix `chekoutSubmodule` method-name typo across all call sites - **Type:** Bug fix (correctness) - **Source:** `BUGS_AND_IMPROVEMENTS_REPORT.md` §1.2 ## Goal Method name in `src/com/meesho/stages/checkOut.groovy:20` reads correctly as `checkoutSubmodule`; every caller in the codebase resolves; consumer Jenkinsfiles that reference the old name don't break overnight. ## Acceptance Criteria - [ ] `checkOut.groovy:20` defines `def checkoutSubmodule(String repo_name)` — not `chekoutSubmodule` - [ ] Every `grep -rn 'chekoutSubmodule'` hit in `src/`, `vars/`, `resources/` is updated to `checkoutSubmodule` - [ ] Cross-org sweep: search `Meesho/*` for `chekoutSubmodule` references and either: - (a) raise companion PRs on each consumer to update the call, **or** - (b) add a backwards-compat alias in `checkOut.groovy`: ```groovy def chekoutSubmodule(String repo_name) { log.warning('chekoutSubmodule is deprecated — use checkoutSubmodule') return checkoutSubmodule(repo_name) } ``` - [ ] Alias (if present) is documented in a `CHANGELOG`-style note with a target removal date - [ ] Smoke-test via a consumer Jenkinsfile that exercises the submodule checkout path - [ ] No behavioural change in the underlying method body — only the name changes ## Notes / known gotchas - The alias path is the safer choice in a shared library — consumer Jenkinsfiles get reviewed and merged on their own schedule, and a hard rename will silently fail across the org. - Once the alias is in, run `gh search code 'chekoutSubmodule' --owner Meesho --json repository,path` periodically to track removal readiness.