Skip to content

feat: camera apply-changes flow + secret-safe source_config patch UX#27

Merged
lan17 merged 2 commits intomainfrom
lev/40
Feb 20, 2026
Merged

feat: camera apply-changes flow + secret-safe source_config patch UX#27
lan17 merged 2 commits intomainfrom
lev/40

Conversation

@lan17
Copy link
Copy Markdown
Owner

@lan17 lan17 commented Feb 19, 2026

Summary

  • add apply_changes support to camera mutation endpoints so create/update/delete can request runtime reload in the same API call
  • extend camera mutation response payload with runtime_reload details when reload is requested and accepted
  • keep canonical API failure behavior for reload conflicts and runtime config errors
  • add a source-config patch editor in the cameras UI (JSON patch input, explicit null clears, no redacted placeholder round-trip)
  • improve camera action UX with clearer mutation error feedback and reload status refresh behavior

API Changes

  • POST /api/v1/cameras?apply_changes=true|false
  • PATCH /api/v1/cameras/{name}?apply_changes=true|false
  • DELETE /api/v1/cameras/{name}?apply_changes=true|false
  • ConfigChangeResponse now optionally includes:
    • runtime_reload: { accepted, message, target_generation }

UI Changes

  • add CameraSourceConfigEditor for partial source-config updates
  • wire applyChanges through create/update/delete camera mutations
  • surface explicit mutation failure messages in camera actions
  • keep restart-required banner semantics consistent with immediate apply mode

Tests

  • backend: expanded behavioral API route coverage for camera apply-changes and secret-safe patch flows
  • UI: added/updated behavioral tests for camera actions and source-config editing flows

Validated locally with:

  • make check (ruff, mypy, backend pytest + coverage, ui check)

@lan17 lan17 changed the title feat: add camera apply-changes flow and secret-safe config editor feat: camera apply-changes flow + secret-safe source_config patch UX Feb 19, 2026
@lan17 lan17 marked this pull request as ready for review February 19, 2026 23:22
@lan17 lan17 merged commit 93323ca into main Feb 20, 2026
3 checks passed
@lan17 lan17 deleted the lev/40 branch February 20, 2026 00:22
@codecov
Copy link
Copy Markdown

codecov Bot commented Feb 20, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 82.01%. Comparing base (9279134) to head (6713258).
⚠️ Report is 2 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main      #27      +/-   ##
==========================================
+ Coverage   81.96%   82.01%   +0.04%     
==========================================
  Files          94       94              
  Lines        8158     8177      +19     
==========================================
+ Hits         6687     6706      +19     
  Misses       1471     1471              

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

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.

1 participant