# Pre-Existing Issues Log

This log tracks bugs, warnings, and confusing behaviors noticed while working on
the Redmine 3.4.4 local fork. It is not a task tracker; it is a place to keep
context so future plugin edits do not have to rediscover old problems.

## 2026-04-21 - Duplicate Contact/Helpdesk Avatar IDs

- Area: `redmine_contacts`, `redmine_contacts_helpdesk`
- Status: observed/analyzing
- Symptom: pages that display multiple contact/user avatars may show or behave
  as if every row has the same thumbnail/avatar.
- Relevant code:
  - `redmine_contacts/lib/redmine_contacts/helpers/contacts_helper.rb`
  - helpdesk/contact views that call `link_to ..., :id => "avatar"` repeatedly
- Current assessment:
  - Several views/helpers render repeated `id="avatar"` attributes on lists of
    contacts, issues, notes, deals, and helpdesk journals.
  - Repeated DOM ids are invalid HTML and can cause JavaScript, tooltip, popup,
    or CSS selectors using `#avatar` to bind to the wrong element or reuse the
    first matching element.
  - This is a better fit for the long-standing "same thumbnail for every user"
    symptom than the Rails cache digest warning below.
- Next diagnostic/fix idea:
  - Replace repeated `:id => "avatar"` with `:class => "avatar"` where no unique
    id is required.
  - Where an id is required, generate stable unique ids such as
    `contact-avatar-#{contact.id}` or `journal-avatar-#{journal.id}`.
  - Test on a page that currently displays multiple contacts/users with distinct
    avatars.

## 2026-04-21 - `attachments/contacts_thumbnail` Cache Digest Warning

- Area: `redmine_contacts`
- Status: observed/analyzing
- Log message:

```text
Couldn't find template for digesting: attachments/contacts_thumbnail
```

- Relevant code:
  - `redmine_contacts/lib/redmine_contacts/patches/attachments_controller_patch.rb`
  - route: `attachments/contacts_thumbnail/:id(/:size)`
- Current assessment:
  - `AttachmentsController#contacts_thumbnail` streams a generated thumbnail via
    `send_file` or returns 404; it normally does not render a view template.
  - Rails 4 cache digesting still probes for a conventional action template and
    logs the missing-template warning.
  - This is likely log noise and probably not the cause of the duplicate-avatar
    symptom.
- Possible fix:
  - Add a blank placeholder template at
    `redmine_contacts/app/views/attachments/contacts_thumbnail.html.erb` with a
    local fork comment explaining that the action streams files.
  - Do this only after confirming it does not mask the duplicate-avatar bug.

## 2026-04-21 - Helpdesk Search Manual URL Confusion

- Area: local `redmine_contacts_helpdesk` search API change
- Status: mitigated in current working copy and LAN deployment
- Symptom:
  - Visiting `/helpdesk_search/issues` or `/helpdesk_search/issues/1` produced
    `ActionController::RoutingError` stack traces in `production.log`.
- Current assessment:
  - The originally implemented API route was
    `/helpdesk_search/issues/:issue_id/ticket`.
  - Manual browser tests naturally tried the shorter paths.
- Mitigation:
  - Added usage routes for `/helpdesk_search`, `/helpdesk_search/issues`, and
    `/helpdesk_search/contacts`.
  - Added `/helpdesk_search/issues/:issue_id` as an alias for the ticket lookup.

## 2026-04-21 - `acts_as_list` Redmine 4 Deprecation Warning

- Area: Redmine core/plugin compatibility
- Status: observed; low urgency while Redmine 3.4.4 remains the baseline
- Log message:

```text
DEPRECATION WARNING: The acts_as_list plugin will be removed from Redmine 4 core, use the acts_as_list gem or similar implementation instead. (called from acts_as_list at /usr/share/redmine/lib/plugins/acts_as_list/lib/active_record/acts/list.rb:34)
```

- Current assessment:
  - This is an upgrade-compatibility warning from the Redmine/Rails stack, not a
    current runtime failure.
  - It means some installed plugin or model uses `acts_as_list` from Redmine
    core. Redmine 4 removes that bundled implementation, so any future Redmine 4+
    migration would need an explicit `acts_as_list` gem or a local replacement.
  - Since the near-term baseline is Redmine 3.4.4 and upgrading is not currently
    a goal, this should not block helpdesk search work.
- Next diagnostic/fix idea:
  - If upgrade work resumes, search installed plugins and app models for
    `acts_as_list`, then decide whether to add the gem or patch each caller.
