Skip to content

Miscellaneous fixes - #24846

Merged
hawkeye217 merged 9 commits into
devfrom
misc-fixes
Nov 2, 2026
Merged

hawkeye217 merged 9 commits into
devfrom
misc-fixes

Conversation

@hawkeye217

@hawkeye217 hawkeye217 commented Nov 1, 2026 •

Copy link
Copy Markdown
Collaborator

Please read the contributing guidelines and the AI policy before submitting a PR. Every PR must be read and submitted by a person, and PRs that appear to be unreviewed AI output will be closed without review.

Proposed change

  • Keep the HA ingress path in recording share links
  • Reject scale below 1 on /recordings/unavailable. Zero hung the event loop
  • Reject negative padding on /vod/event and clamp preview gif/mp4 offsets to the start of the preview
  • Don't delete an export that is still in progress
  • Hash a dummy password when the login username doesn't exist, so response time doesn't reveal valid usernames
  • Include the start hour in the Explore time-of-day filter
  • Show an error and clean up the service worker when the push subscription fails
  • Don't wipe an unnamed entry when adding another known plate
  • Fix the export "last N hours" range across DST changes
  • Load live dashboard audio and volume from the current camera group only, and reset them when the group changes
  • Don't clear a trigger's highlight when another trigger fires within 3 seconds
  • Fix two-way talk shortcut
  • Fix detail stream active item after camera switch
  • Show already running message when a media sync is in progress
  • Pick the earliest overlapping preview for preview gif and mp4
  • Remove password strength meter and fix confirm password feedback
  • Add tests

Deps for dependabot:

  • Hold pandas 3.1 until numpy 2

Type of change

  • Dependency upgrade
  • Bugfix (non-breaking change which fixes an issue)
  • New feature
  • Breaking change (fix/feature causing existing functionality to break)
  • Code quality improvements to existing code
  • Documentation Update

Additional information

  • This PR fixes or closes issue: fixes #
  • This PR is related to issue:
  • Link to discussion with maintainers (required for any large or "planned" features):

For new features

  • There is an existing feature request or discussion with community interest for this change.
    • Link:

AI disclosure

  • No AI tools were used in this PR.
  • AI tools were used in this PR. Details below:

AI tool(s) used (e.g., Claude, Copilot, ChatGPT, Cursor):

How AI was used (e.g., code generation, code review, debugging, documentation):

Extent of AI involvement (e.g., generated entire implementation, assisted with specific functions, suggested fixes):

Human oversight: Describe what manual review, testing, and validation you performed on the AI-generated portions.

Checklist

  • The code change is tested and works locally.
  • Local tests pass. Your PR cannot be merged unless tests pass
  • There is no commented out code in this PR.
  • I can explain every line of code in this PR if asked.
  • UI changes including text have used i18n keys and have been added to the en locale.
  • The code has been formatted using Ruff (ruff format frigate)

- keep base path in recording share links
- reject non-positive scale on recordings/unavailable, which looped forever on the event loop
- reject negative vod event padding, which cleared has_clip
- clamp negative preview gif/mp4 offsets
- don't delete exports that are still in progress
- hash on unknown login usernames so timing doesn't reveal valid users
- include the first minute of the events time-of-day filter
- show an error when the push subscription is refused
- don't wipe an unnamed known plates entry when Add is pressed again
- use elapsed hours for export last N hours so DST doesn't shift the range
- start each camera group's audio from that group's saved settings instead of merging every group
- don't clear the previous trigger's highlight timeout when another trigger fires
@greptile-apps

greptile-apps Bot commented Nov 1, 2026 •

Copy link
Copy Markdown
Contributor

RetriggerView in GreptileConfidence Score: 5/5

[Medium impact] The PR appears safe to merge; no new actionable issue remains.

Summary

This PR fixes recording links, media bounds, export cleanup, live audio settings, and several settings-page behaviors. The latest changes remove the password strength meter and refresh confirmation checks when the password changes.

  • Login checks unknown usernames with the same password-hashing work.
  • Recording and event requests reject values outside their allowed ranges.
  • Exports stay intact while running and failed exports lose their partial files.
  • Preview GIFs and MP4s start at the earliest matching preview.
  • Time-of-day filters include events at the start of the selected range.
  • Review results are ordered by their start time.
  • Export time presets keep the same duration across daylight-saving changes.
  • Recording share links keep the app's existing path prefix.
  • Live audio and volume follow the selected camera group.
  • The detail stream selects a review item after a camera switch.
  • The live camera's T shortcut turns two-way talk on and off.
  • Failed push registrations show an error and clean up the worker.
  • Adding a known plate leaves an existing unnamed entry alone.
  • Password dialogs show when the two entered passwords do not match.
  • The media sync screen shows the already-running message for a running sync.
  • A trigger stays highlighted for three seconds after its latest alert.
  • Dependabot holds pandas updates at version 3.1 and above.

Reviews (6) · Last reviewed commit: "remove password strength meter and fix c..." · Reviewed by Greptile

Comment thread frigate/api/export.py Resolved
Comment thread frigate/api/auth.py Resolved
Comment thread frigate/api/media.py Resolved
Comment thread web/src/views/settings/TriggerView.tsx Resolved
Comment thread web/src/utils/recordingReviewUrl.ts Resolved
- Discard the export row when an export fails before or during ffmpeg, so it doesn't stay in progress until a restart
- Skip the empty thumbnail path when discarding a failed export
- Measure preview clip duration from the clamped start
- Default live player volume to 1 when the group has no saved setting
- Clear the unsaved registration message when notification registration fails
- Keep a highlight timer per trigger
- Remove the severity order_by in /review, which the start_time order_by replaced
Comment thread web/src/views/live/LiveCameraView.tsx Resolved
The strength meter still scored against the old 8 character and character class rules, so any password with a digit, like test1234, showed a full green "Very Strong" bar next to the failing 12 character requirement. The meter is gone and the length checklist is the only feedback. The password field's form message duplicated the checklist, and editing the password never revalidated the confirm field, so a fixed mismatch kept showing "Passwords do not match". Editing the password now revalidates the confirm field once it has a value, and both dialogs show a live match/mismatch indicator in place of the confirm form message.
Comment thread frigate/api/export.py Resolved
@hawkeye217
hawkeye217 merged commit 96ce75c into dev Nov 2, 2026
11 checks passed
@hawkeye217
hawkeye217 deleted the misc-fixes branch November 2, 2026 14:11
jtn0123 added a commit to jtn0123/frigate that referenced this pull request Nov 3, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants