[INFO] 2025-12-15 16:03:15 atlas_record_cleaner_report.services.atlas_service atlas_service.fetch_atlas_occurrences: Fetched 100 occurrences from Atlas
[INFO] 2025-12-15 16:03:15 atlas_record_cleaner_report.services.record_cleaner_service record_cleaner_service.validate: Validating batch 1: records 1 to 100
[INFO] 2025-12-15 16:03:25 atlas_record_cleaner_report.services.record_cleaner_service record_cleaner_service.verify: Verifying batch 1: records 1 to 100
[INFO] 2025-12-15 16:03:27 atlas_record_cleaner_report.services.record_cleaner_service record_cleaner_service.validate_and_verify: Record Cleaner: 100 validated, 100 verified
[INFO] 2025-12-15 22:40:16 atlas_record_cleaner_report.services.atlas_service atlas_service.fetch_atlas_occurrences: Fetched 100 occurrences from Atlas
[INFO] 2025-12-15 22:40:16 atlas_record_cleaner_report.services.record_cleaner_service record_cleaner_service.validate: Validating batch 1: records 1 to 100
[INFO] 2025-12-15 22:40:17 atlas_record_cleaner_report.services.record_cleaner_service record_cleaner_service.verify: Verifying batch 1: records 1 to 100
[INFO] 2025-12-15 22:40:17 atlas_record_cleaner_report.services.record_cleaner_service record_cleaner_service.validate_and_verify: Record Cleaner: 100 validated, 100 verified
[INFO] 2025-12-15 22:41:01 atlas_record_cleaner_report.services.atlas_service atlas_service.fetch_atlas_occurrences: Fetched 100 occurrences from Atlas
[INFO] 2025-12-15 22:41:01 atlas_record_cleaner_report.services.record_cleaner_service record_cleaner_service.validate: Validating batch 1: records 1 to 100
[INFO] 2025-12-15 22:41:03 atlas_record_cleaner_report.services.record_cleaner_service record_cleaner_service.verify: Verifying batch 1: records 1 to 100
[INFO] 2025-12-15 22:41:04 atlas_record_cleaner_report.services.record_cleaner_service record_cleaner_service.validate_and_verify: Record Cleaner: 100 validated, 100 verified
[INFO] 2025-12-16 13:56:57 atlas_record_cleaner_report.services.atlas_service atlas_service.fetch_atlas_occurrences: Fetched 100 occurrences from Atlas
[INFO] 2025-12-16 13:56:57 atlas_record_cleaner_report.services.record_cleaner_service record_cleaner_service.validate: Validating batch 1: records 1 to 100
[INFO] 2025-12-16 13:56:57 atlas_record_cleaner_report.services.record_cleaner_service record_cleaner_service.verify: Verifying batch 1: records 1 to 100
[INFO] 2025-12-16 13:56:58 atlas_record_cleaner_report.services.record_cleaner_service record_cleaner_service.validate_and_verify: Record Cleaner: 100 validated, 100 verified
[INFO] 2025-12-16 13:57:36 atlas_record_cleaner_report.services.atlas_service atlas_service.fetch_atlas_occurrences: Fetched 100 occurrences from Atlas
[INFO] 2025-12-16 13:57:36 atlas_record_cleaner_report.services.record_cleaner_service record_cleaner_service.validate: Validating batch 1: records 1 to 100
[INFO] 2025-12-16 13:57:38 atlas_record_cleaner_report.services.record_cleaner_service record_cleaner_service.verify: Verifying batch 1: records 1 to 100
[INFO] 2025-12-16 13:57:38 atlas_record_cleaner_report.services.record_cleaner_service record_cleaner_service.validate_and_verify: Record Cleaner: 100 validated, 100 verified
[INFO] 2025-12-16 14:08:46 atlas_record_cleaner_report.services.atlas_service atlas_service.fetch_atlas_occurrences: Fetched 100 occurrences from Atlas
[INFO] 2025-12-16 14:08:46 atlas_record_cleaner_report.services.record_cleaner_service record_cleaner_service.validate: Validating batch 1: records 1 to 100
[INFO] 2025-12-16 14:08:46 atlas_record_cleaner_report.services.record_cleaner_service record_cleaner_service.verify: Verifying batch 1: records 1 to 100
[INFO] 2025-12-16 14:08:47 atlas_record_cleaner_report.services.record_cleaner_service record_cleaner_service.validate_and_verify: Record Cleaner: 100 validated, 100 verified
[INFO] 2025-12-16 14:57:56 atlas_record_cleaner_report.services.atlas_service atlas_service.fetch_atlas_occurrences: Fetched 100 occurrences from Atlas
[INFO] 2025-12-16 14:57:56 atlas_record_cleaner_report.services.record_cleaner_service record_cleaner_service.validate: Validating batch 1: records 1 to 91
[INFO] 2025-12-16 14:57:58 atlas_record_cleaner_report.services.record_cleaner_service record_cleaner_service.verify: Verifying batch 1: records 1 to 91
[INFO] 2025-12-16 14:57:59 atlas_record_cleaner_report.services.record_cleaner_service record_cleaner_service.validate_and_verify: Record Cleaner: 91 validated, 91 verified
[INFO] 2025-12-16 16:41:31 atlas_record_cleaner_report.services.atlas_service atlas_service.fetch_atlas_occurrences: Fetched 100 occurrences from Atlas
[INFO] 2025-12-16 16:41:31 atlas_record_cleaner_report.services.record_cleaner_service record_cleaner_service.validate: Validating batch 1: records 1 to 100
[INFO] 2025-12-16 16:41:41 atlas_record_cleaner_report.services.record_cleaner_service record_cleaner_service.verify: Verifying batch 1: records 1 to 99
[INFO] 2025-12-16 16:41:42 atlas_record_cleaner_report.services.record_cleaner_service record_cleaner_service.validate_and_verify: Record Cleaner: 100 validated, 99 verified
[INFO] 2025-12-17 16:46:41 atlas_record_cleaner_report.services.atlas_service atlas_service.fetch_atlas_occurrences: Fetched 100 occurrences from Atlas
[INFO] 2025-12-17 16:46:41 atlas_record_cleaner_report.services.record_cleaner_service record_cleaner_service.validate: Validating batch 1: records 1 to 100
[INFO] 2025-12-17 16:46:43 atlas_record_cleaner_report.services.record_cleaner_service record_cleaner_service.verify: Verifying batch 1: records 1 to 96
[INFO] 2025-12-17 16:46:43 atlas_record_cleaner_report.services.record_cleaner_service record_cleaner_service.validate_and_verify: Record Cleaner: 100 validated, 96 verified
[INFO] 2025-12-17 16:47:01 atlas_record_cleaner_report.services.atlas_service atlas_service.fetch_atlas_occurrences: Fetched 100 occurrences from Atlas
[INFO] 2025-12-17 16:47:01 atlas_record_cleaner_report.services.record_cleaner_service record_cleaner_service.validate: Validating batch 1: records 1 to 100
[INFO] 2025-12-17 16:47:15 atlas_record_cleaner_report.services.record_cleaner_service record_cleaner_service.verify: Verifying batch 1: records 1 to 99
[INFO] 2025-12-17 16:47:15 atlas_record_cleaner_report.services.record_cleaner_service record_cleaner_service.validate_and_verify: Record Cleaner: 100 validated, 99 verified
[INFO] 2025-12-18 10:06:01 atlas_record_cleaner_report.services.atlas_service atlas_service.fetch_atlas_occurrences: Fetched 100 occurrences from Atlas
[INFO] 2025-12-18 10:06:01 atlas_record_cleaner_report.services.record_cleaner_service record_cleaner_service.validate: Validating batch 1: records 1 to 100
[INFO] 2025-12-18 10:06:03 atlas_record_cleaner_report.services.record_cleaner_service record_cleaner_service.verify: Verifying batch 1: records 1 to 99
[INFO] 2025-12-18 10:06:04 atlas_record_cleaner_report.services.record_cleaner_service record_cleaner_service.validate_and_verify: Record Cleaner: 100 validated, 99 verified
[ERROR] 2025-12-18 10:06:27 django.request log.log_response: Internal Server Error: /record-cleaner/download-original-csv/
Traceback (most recent call last):
  File "/home/devsgone/apps/devs-gone-wild-app/.venv/lib/python3.13/site-packages/django/core/handlers/exception.py", line 55, in inner
    response = get_response(request)
  File "/home/devsgone/apps/devs-gone-wild-app/.venv/lib/python3.13/site-packages/django/core/handlers/base.py", line 197, in _get_response
    response = wrapped_callback(request, *callback_args, **callback_kwargs)
  File "/home/devsgone/apps/devs-gone-wild-app/.venv/lib/python3.13/site-packages/django/views/decorators/http.py", line 64, in inner
    return func(request, *args, **kwargs)
  File "/home/devsgone/apps/devs-gone-wild-app/atlas_record_cleaner_report/views.py", line 418, in download_original_csv
    writer.writerows(processed_records)
    ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^
  File "/home/devsgone/.local/share/uv/python/cpython-3.13.9-linux-x86_64-gnu/lib/python3.13/csv.py", line 229, in writerows
    return self.writer.writerows(map(self._dict_to_list, rowdicts))
           ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/devsgone/.local/share/uv/python/cpython-3.13.9-linux-x86_64-gnu/lib/python3.13/csv.py", line 221, in _dict_to_list
    raise ValueError("dict contains fields not in fieldnames: "
                     + ", ".join([repr(x) for x in wrong_fields]))
ValueError: dict contains fields not in fieldnames: 'lifeStage'
[INFO] 2025-12-18 10:36:38 atlas_record_cleaner_report.services.atlas_service atlas_service.fetch_atlas_occurrences: Fetched 100 occurrences from Atlas
[INFO] 2025-12-18 10:36:38 atlas_record_cleaner_report.services.record_cleaner_service record_cleaner_service.validate: Validating batch 1: records 1 to 100
[INFO] 2025-12-18 10:36:44 atlas_record_cleaner_report.services.record_cleaner_service record_cleaner_service.verify: Verifying batch 1: records 1 to 100
[INFO] 2025-12-18 10:36:44 atlas_record_cleaner_report.services.record_cleaner_service record_cleaner_service.validate_and_verify: Record Cleaner: 100 validated, 100 verified
[INFO] 2026-01-08 12:13:54 atlas_record_cleaner_report.services.atlas_service atlas_service.fetch_atlas_occurrences: Fetched 100 occurrences from Atlas
[INFO] 2026-01-08 12:13:54 atlas_record_cleaner_report.services.record_cleaner_service record_cleaner_service.validate: Validating batch 1: records 1 to 99
[INFO] 2026-01-08 12:14:00 atlas_record_cleaner_report.services.record_cleaner_service record_cleaner_service.verify: Verifying batch 1: records 1 to 97
[INFO] 2026-01-08 12:14:05 atlas_record_cleaner_report.services.record_cleaner_service record_cleaner_service.validate_and_verify: Record Cleaner: 99 validated, 97 verified
[INFO] 2026-01-10 22:41:54 atlas_record_cleaner_report.services.atlas_service atlas_service.fetch_atlas_occurrences: Fetched 1 occurrences from Atlas
[INFO] 2026-01-10 22:41:54 atlas_record_cleaner_report.services.record_cleaner_service record_cleaner_service.validate: Validating batch 1: records 1 to 1
[INFO] 2026-01-10 22:41:55 atlas_record_cleaner_report.services.record_cleaner_service record_cleaner_service.verify: Verifying batch 1: records 1 to 1
[INFO] 2026-01-10 22:41:55 atlas_record_cleaner_report.services.record_cleaner_service record_cleaner_service.validate_and_verify: Record Cleaner: 1 validated, 1 verified
[ERROR] 2026-01-14 22:55:10 django.request log.log_response: Internal Server Error: /eventhub/
Traceback (most recent call last):
  File "/home/devsgone/apps/devs-gone-wild-app/.venv/lib/python3.13/site-packages/django/db/backends/utils.py", line 105, in _execute
    return self.cursor.execute(sql, params)
           ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^
psycopg2.errors.UndefinedTable: relation "eventhub_event" does not exist
LINE 1: ...ated_at", COUNT(T3."id") AS "children_count" FROM "eventhub_...
                                                             ^


The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/home/devsgone/apps/devs-gone-wild-app/.venv/lib/python3.13/site-packages/django/core/handlers/exception.py", line 55, in inner
    response = get_response(request)
  File "/home/devsgone/apps/devs-gone-wild-app/.venv/lib/python3.13/site-packages/django/core/handlers/base.py", line 197, in _get_response
    response = wrapped_callback(request, *callback_args, **callback_kwargs)
  File "/home/devsgone/apps/devs-gone-wild-app/.venv/lib/python3.13/site-packages/django/views/generic/base.py", line 105, in view
    return self.dispatch(request, *args, **kwargs)
           ~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/devsgone/apps/devs-gone-wild-app/.venv/lib/python3.13/site-packages/django/views/generic/base.py", line 144, in dispatch
    return handler(request, *args, **kwargs)
  File "/home/devsgone/apps/devs-gone-wild-app/.venv/lib/python3.13/site-packages/django/views/generic/list.py", line 178, in get
    context = self.get_context_data()
  File "/home/devsgone/apps/devs-gone-wild-app/eventhub/views.py", line 38, in get_context_data
    for event in events:
                 ^^^^^^
  File "/home/devsgone/apps/devs-gone-wild-app/.venv/lib/python3.13/site-packages/django/db/models/query.py", line 384, in __iter__
    self._fetch_all()
    ~~~~~~~~~~~~~~~^^
  File "/home/devsgone/apps/devs-gone-wild-app/.venv/lib/python3.13/site-packages/django/db/models/query.py", line 1949, in _fetch_all
    self._result_cache = list(self._iterable_class(self))
                         ~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/devsgone/apps/devs-gone-wild-app/.venv/lib/python3.13/site-packages/django/db/models/query.py", line 91, in __iter__
    results = compiler.execute_sql(
        chunked_fetch=self.chunked_fetch, chunk_size=self.chunk_size
    )
  File "/home/devsgone/apps/devs-gone-wild-app/.venv/lib/python3.13/site-packages/django/db/models/sql/compiler.py", line 1623, in execute_sql
    cursor.execute(sql, params)
    ~~~~~~~~~~~~~~^^^^^^^^^^^^^
  File "/home/devsgone/apps/devs-gone-wild-app/.venv/lib/python3.13/site-packages/django/db/backends/utils.py", line 79, in execute
    return self._execute_with_wrappers(
           ~~~~~~~~~~~~~~~~~~~~~~~~~~~^
        sql, params, many=False, executor=self._execute
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    )
    ^
  File "/home/devsgone/apps/devs-gone-wild-app/.venv/lib/python3.13/site-packages/django/db/backends/utils.py", line 92, in _execute_with_wrappers
    return executor(sql, params, many, context)
  File "/home/devsgone/apps/devs-gone-wild-app/.venv/lib/python3.13/site-packages/django/db/backends/utils.py", line 100, in _execute
    with self.db.wrap_database_errors:
         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/devsgone/apps/devs-gone-wild-app/.venv/lib/python3.13/site-packages/django/db/utils.py", line 91, in __exit__
    raise dj_exc_value.with_traceback(traceback) from exc_value
  File "/home/devsgone/apps/devs-gone-wild-app/.venv/lib/python3.13/site-packages/django/db/backends/utils.py", line 105, in _execute
    return self.cursor.execute(sql, params)
           ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^
django.db.utils.ProgrammingError: relation "eventhub_event" does not exist
LINE 1: ...ated_at", COUNT(T3."id") AS "children_count" FROM "eventhub_...
                                                             ^

[INFO] 2026-01-19 10:54:18 atlas_record_cleaner_report.services.atlas_service atlas_service.fetch_atlas_occurrences: Fetched 100 occurrences from Atlas
[INFO] 2026-01-19 10:54:18 atlas_record_cleaner_report.services.record_cleaner_service record_cleaner_service.validate: Validating batch 1: records 1 to 100
[INFO] 2026-01-19 10:54:20 atlas_record_cleaner_report.services.record_cleaner_service record_cleaner_service.verify: Verifying batch 1: records 1 to 100
[INFO] 2026-01-19 10:54:21 atlas_record_cleaner_report.services.record_cleaner_service record_cleaner_service.validate_and_verify: Record Cleaner: 100 validated, 100 verified
[INFO] 2026-01-19 12:43:54 atlas_record_cleaner_report.services.atlas_service atlas_service.fetch_atlas_occurrences: Fetched 100 occurrences from Atlas
[INFO] 2026-01-19 12:43:54 atlas_record_cleaner_report.services.record_cleaner_service record_cleaner_service.validate: Validating batch 1: records 1 to 100
[INFO] 2026-01-19 12:43:57 atlas_record_cleaner_report.services.record_cleaner_service record_cleaner_service.verify: Verifying batch 1: records 1 to 100
[INFO] 2026-01-19 12:43:57 atlas_record_cleaner_report.services.record_cleaner_service record_cleaner_service.validate_and_verify: Record Cleaner: 100 validated, 100 verified
[INFO] 2026-01-19 13:20:26 atlas_record_cleaner_report.services.atlas_service atlas_service.fetch_atlas_occurrences: Fetched 100 occurrences from Atlas
[INFO] 2026-01-19 13:20:26 atlas_record_cleaner_report.services.record_cleaner_service record_cleaner_service.validate: Validating batch 1: records 1 to 100
[INFO] 2026-01-19 13:20:28 atlas_record_cleaner_report.services.record_cleaner_service record_cleaner_service.verify: Verifying batch 1: records 1 to 100
[INFO] 2026-01-19 13:20:28 atlas_record_cleaner_report.services.record_cleaner_service record_cleaner_service.validate_and_verify: Record Cleaner: 100 validated, 100 verified
[INFO] 2026-01-28 16:21:42 atlas_record_cleaner_report.services.atlas_service atlas_service.fetch_atlas_occurrences: Fetched 100 occurrences from Atlas
[INFO] 2026-01-28 16:21:42 atlas_record_cleaner_report.services.record_cleaner_service record_cleaner_service.validate: Validating batch 1: records 1 to 99
[INFO] 2026-01-28 16:21:52 atlas_record_cleaner_report.services.record_cleaner_service record_cleaner_service.verify: Verifying batch 1: records 1 to 99
[INFO] 2026-01-28 16:21:52 atlas_record_cleaner_report.services.record_cleaner_service record_cleaner_service.validate_and_verify: Record Cleaner: 99 validated, 99 verified
[INFO] 2026-01-28 16:30:00 atlas_record_cleaner_report.services.atlas_service atlas_service.fetch_atlas_occurrences: Fetched 100 occurrences from Atlas
[INFO] 2026-01-28 16:30:00 atlas_record_cleaner_report.services.record_cleaner_service record_cleaner_service.validate: Validating batch 1: records 1 to 100
[INFO] 2026-01-28 16:30:05 atlas_record_cleaner_report.services.record_cleaner_service record_cleaner_service.verify: Verifying batch 1: records 1 to 100
[INFO] 2026-01-28 16:30:06 atlas_record_cleaner_report.services.record_cleaner_service record_cleaner_service.validate_and_verify: Record Cleaner: 100 validated, 100 verified
[INFO] 2026-02-24 18:04:55 atlas_record_cleaner_report.services.atlas_service atlas_service.fetch_atlas_occurrences: Fetched 100 occurrences from Atlas
[ERROR] 2026-02-24 18:04:55 atlas_record_cleaner_report.views views.generate_report: Error generating report: '<=' not supported between instances of 'str' and 'int'
Traceback (most recent call last):
  File "/home/devsgone/apps/devs-gone-wild-app/atlas_record_cleaner_report/views.py", line 205, in generate_report
    rc_record = map_occurrence_to_record_cleaner(occurrence, idx)
  File "/home/devsgone/apps/devs-gone-wild-app/atlas_record_cleaner_report/services/data_mapper.py", line 133, in map_occurrence_to_record_cleaner
    'sref': _build_spatial_reference(occurrence)
            ~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^
  File "/home/devsgone/apps/devs-gone-wild-app/atlas_record_cleaner_report/services/data_mapper.py", line 103, in _build_spatial_reference
    'accuracy': map_coordinate_uncertainty(
                ~~~~~~~~~~~~~~~~~~~~~~~~~~^
        occurrence.get('coordinateUncertaintyInMeters')
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    )
    ^
  File "/home/devsgone/apps/devs-gone-wild-app/atlas_record_cleaner_report/services/data_mapper.py", line 50, in map_coordinate_uncertainty
    if uncertainty_in_meters is None or uncertainty_in_meters <= 0:
                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^
TypeError: '<=' not supported between instances of 'str' and 'int'
[INFO] 2026-02-24 18:05:05 atlas_record_cleaner_report.services.atlas_service atlas_service.fetch_atlas_occurrences: Fetched 100 occurrences from Atlas
[INFO] 2026-02-24 18:05:05 atlas_record_cleaner_report.services.record_cleaner_service record_cleaner_service.validate: Validating batch 1: records 1 to 66
[INFO] 2026-02-24 18:05:07 atlas_record_cleaner_report.services.record_cleaner_service record_cleaner_service.verify: Verifying batch 1: records 1 to 66
[INFO] 2026-02-24 18:05:08 atlas_record_cleaner_report.services.record_cleaner_service record_cleaner_service.validate_and_verify: Record Cleaner: 66 validated, 66 verified
[INFO] 2026-03-09 19:00:38 atlas_record_cleaner_report.services.atlas_service atlas_service.fetch_atlas_occurrences: Fetched 100 occurrences from Atlas
[INFO] 2026-03-09 19:00:38 atlas_record_cleaner_report.services.record_cleaner_service record_cleaner_service.validate: Validating batch 1: records 1 to 78
[INFO] 2026-03-09 19:00:40 atlas_record_cleaner_report.services.record_cleaner_service record_cleaner_service.verify: Verifying batch 1: records 1 to 78
[INFO] 2026-03-09 19:00:40 atlas_record_cleaner_report.services.record_cleaner_service record_cleaner_service.validate_and_verify: Record Cleaner: 78 validated, 78 verified
[INFO] 2026-03-09 19:01:07 atlas_record_cleaner_report.services.atlas_service atlas_service.fetch_atlas_occurrences: Fetched 100 occurrences from Atlas
[INFO] 2026-03-09 19:01:07 atlas_record_cleaner_report.services.record_cleaner_service record_cleaner_service.validate: Validating batch 1: records 1 to 100
[INFO] 2026-03-09 19:01:09 atlas_record_cleaner_report.services.record_cleaner_service record_cleaner_service.verify: Verifying batch 1: records 1 to 100
[INFO] 2026-03-09 19:01:09 atlas_record_cleaner_report.services.record_cleaner_service record_cleaner_service.validate_and_verify: Record Cleaner: 100 validated, 100 verified
[INFO] 2026-03-12 12:01:41 atlas_record_cleaner_report.services.atlas_service atlas_service.fetch_atlas_occurrences: Fetched 100 occurrences from Atlas
[INFO] 2026-03-12 12:01:41 atlas_record_cleaner_report.services.record_cleaner_service record_cleaner_service.validate: Validating batch 1: records 1 to 100
[INFO] 2026-03-12 12:01:43 atlas_record_cleaner_report.services.record_cleaner_service record_cleaner_service.verify: Verifying batch 1: records 1 to 100
[INFO] 2026-03-12 12:01:44 atlas_record_cleaner_report.services.record_cleaner_service record_cleaner_service.validate_and_verify: Record Cleaner: 100 validated, 100 verified
