Skip to content

[Bug?] Cannot create/edit profile with is_multi_track_enabled=true, but multi-track transcription requires it #454

Description

@T012m3n7oR

What the issue is

Starting transcription for multi-track jobs fails with:

"Multi-track audio requires a profile with multi-track transcription enabled. Please select a different profile with multi-track support."

However, in Settings -> Transcription Profiles, there is no clear way to create or edit a profile so that parameters.is_multi_track_enabled = true for normal profile management flows.

Why this is a problem

  • Multi-track jobs become effectively unstartable from profile-based workflows.
  • Users are told to select/create a compatible profile, but the profile UI does not expose a compatible control path.
  • Creates a dead-end UX: requirement exists in validation, but the UI path to satisfy it is missing or hidden.

Expected behavior

  • Users can create/edit a profile in settings that explicitly supports multi-track (is_multi_track_enabled=true), or
  • UI automatically handles compatibility in context (e.g., when starting a multi-track job), or
  • incompatible profiles are clearly filtered with an actionable path to create a compatible one.

Actual behavior

  • Validation in transcription flow blocks start when selected profile has is_multi_track_enabled=false.
  • Settings profile editor defaults this flag to false and does not expose an explicit toggle in standard profile mode.
  • Result: user sees blocking alert but cannot easily resolve it in profile settings.

Tracking details (code paths)

Frontend validation block

web/frontend/src/features/transcription/components/AudioFilesTable.tsx

  • Multi-track job start is blocked when !params.is_multi_track_enabled.
  • Alert text tells user to choose/create a multi-track-capable profile.

Profile parameter defaulting

web/frontend/src/components/transcription/TranscriptionConfigDialog.tsx

  • DEFAULT_PARAMS.is_multi_track_enabled = false.
  • Dialog only auto-sets is_multi_track_enabled from isMultiTrack context prop.

Settings profile creation/edit path

web/frontend/src/features/settings/components/ProfileSettings.tsx

  • Opens TranscriptionConfigDialog in profile mode without multi-track context.
  • This path tends to persist profiles with is_multi_track_enabled=false.

Backend enforcement

internal/api/handlers.go

  • Validation rejects starts where:
    • job.IsMultiTrack && !requestParams.IsMultiTrackEnabled
    • !job.IsMultiTrack && requestParams.IsMultiTrackEnabled

Reproduction steps

  1. Upload/create a multi-track job.
  2. Go to Settings -> Transcription Profiles.
  3. Create a profile (or edit existing) and save.
  4. Attempt to start transcription for that multi-track job using the saved profile.
  5. Observe blocking alert requiring multi-track-enabled profile.
  6. Observe no obvious settings UI control to enable multi-track mode on that profile.

Suspected regression lineage (git history)

This appears to be introduced as a cross-file integration gap during frontend refactors:

  • 90dfc9a (Refactor Dashboard and AudioFilesTable to use TanStack Query)

    • Introduced strict compatibility checks and blocking alerts in AudioFilesTable for:
      • multi-track job + !params.is_multi_track_enabled
      • single-track job + params.is_multi_track_enabled
  • 3e70287 (fix: redesign transcription config dialogue)

    • Dialog defaults is_multi_track_enabled to false.
    • Dialog only flips it via isMultiTrack context prop.
  • 6218faf (feat: revamp settings page)

    • Settings profile flow uses TranscriptionConfigDialog in profile mode, but without passing isMultiTrack.
    • That leaves profile creation/edit with no explicit path to produce is_multi_track_enabled=true.

Net effect: validation became strict, but settings profile UI path does not provide a compatible control for that required parameter.

Suggested fix direction

One or more of:

  1. Add explicit Enable multi-track transcription toggle in profile editor UI and persist parameters.is_multi_track_enabled.
  2. In job-start dialogs, auto-force/lock is_multi_track_enabled=true for multi-track jobs and disable incompatible profiles.
  3. Add profile filtering labels ("Multi-track compatible") and hide incompatible options when starting a multi-track job.
  4. Add validation error details in UI response handling to direct users to exact fix path.

Acceptance criteria

  • User can create/edit a profile from settings that is multi-track compatible.
  • Multi-track job start succeeds with such profile without manual JSON or hidden context hacks.
  • UI no longer presents dead-end alert without a direct remediation path.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions