Mechanical cleanup, quick fixes & deduplication #531
Labels
No labels
bug
duplicate
enhancement
help wanted
high priority
invalid
L
low priority
M
medium priority
needs refinement
optional
question
S
technical improvement
UX Improvement
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference: local-it/mitgliederverwaltung#531
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Motivation
A batch of small, low-risk fixes and dedup.
Bundled into one issue with a single theme: no behavior change (except fixing two latent bugs), and clear out
duplication and dead code. This also unblocks a Credo ratchet (see Acceptance).
Scope
Quick fixes / latent bugs
otp_app: :my→:mvinlib/mv/application.ex:35. Verified bug: theapp is
:mv, so the Expunger/audit-log batcher children resolve config under the wrong OTP app and run againstempty config in non-test environments. After the fix, confirm all auth children boot.
lib/accounts/user_identity.exs(verified: zero references, no migration /user_identitiestable, OIDC stores identity on
Userviaoidc_id, the oidc strategy sets noidentity_resource).MemberExport.fetch/2chain inlib/mv/membership/member_export.ex:53-274(~220 LOC; confirmzero callers across lib + test first).
Logger.infotiming on the member-list hot path(
lib/mv_web/live/member_live/index.ex:1029-1030).Deduplication (behavior-preserving)
user_live/form.ex:574-624andgroup_live/show.ex:568-613.membership_fee_type_live/index.ex:147-196andmembership_fee_settings_live.ex.current_actor(conn)copy-pasted acrossmember_pdf_export_controller.ex:84,member_export_controller.ex:56,import_template_controller.ex:108→ one shared helper.Calendar.strftime(date, "%d.%m.%Y")reimplemented inmembership_fee_helpers.ex:253andmember_live/show.ex:725,763→ useMvWeb.Helpers.DateFormatter.format_date/1.membership_fee_cycle_read_linked_for_own_data.ex,member_group_read_linked_for_own_data.ex) → one generic check.UpdateSingleMemberFieldandUpdateSingleMemberFieldVisibility(update_single_member_field.ex:153-178).run/0→run/1incycle_generation_job.ex:62.OidcRoleSyncConfigpassthrough wrapper + its delegation-only test, and the duplicateTypeParsers.parse_boolean.load_linked_member(sync_linked_member_after_user_change.ex:59) againstMv.EmailSync.Loader.reject_join_request@spec (membership.ex:839-851).Module-layout normalization
Readability.StrictModuleLayout(mechanical).Acceptance criteria
otp_appfix); add a small test that the authchildren boot with the corrected
otp_app.StrictModuleLayoutviolations are cleared; promoteReadability.StrictModuleLayoutinto the gate.credo.exs(ratchet). (Warning.UnsafeToAtomis promoted in issue "Correctness …", where its fix lands.)just ci-devgreen.