- New models: SystemSettings gets 8 cove_* fields, Job gets cove_account_id, JobRun gets source_type and external_id - Migration migrate_cove_integration() adds all new DB columns and a deduplication index on job_runs.external_id - cove_importer.py: Cove API login, paginated EnumerateAccountStatistics, deduplication via external_id, JobRun creation, per-datasource run_object_links persistence (Files&Folders, VssMsSql, M365, etc.) - cove_importer_service.py: background thread, same pattern as auto_importer_service, respects cove_import_interval_minutes - __init__.py: starts cove_importer thread on app startup - routes_settings.py: Cove form handling (POST), has_cove_password variable, new AJAX route /settings/cove/test-connection - routes_jobs.py: new route /jobs/<id>/set-cove-account, cove_enabled passed to job_detail template - settings.html: Cove card in Integrations tab with AJAX test button - job_detail.html: Cove Integration card with Account ID input Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| architecture.md | ||
| autotask_rest_api.md | ||
| backupchecks_autotask_integration_functional_design_living_document.md | ||
| backupchecks_autotask_integration_implementation_breakdown.md | ||
| backupchecks_autotask_integration_phase_2_implementation.md | ||
| changelog-claude.md | ||
| changelog.md | ||
| cove_data_protection_api_calls_known_info.md | ||
| manifest.md | ||
| migrations.md | ||
| reporting-proposal.md | ||
| technical-notes-codex.md | ||