LICENSE
README.md
pyproject.toml
src/fleetpull/__init__.py
src/fleetpull/cli.py
src/fleetpull/exceptions.py
src/fleetpull/py.typed
src/fleetpull.egg-info/PKG-INFO
src/fleetpull.egg-info/SOURCES.txt
src/fleetpull.egg-info/dependency_links.txt
src/fleetpull.egg-info/entry_points.txt
src/fleetpull.egg-info/requires.txt
src/fleetpull.egg-info/top_level.txt
src/fleetpull/api/__init__.py
src/fleetpull/api/auth_ingress.py
src/fleetpull/api/catalog.py
src/fleetpull/api/fetch.py
src/fleetpull/api/identity.py
src/fleetpull/api/sync.py
src/fleetpull/config/__init__.py
src/fleetpull/config/base.py
src/fleetpull/config/example.py
src/fleetpull/config/geotab.py
src/fleetpull/config/http.py
src/fleetpull/config/loading.py
src/fleetpull/config/logger.py
src/fleetpull/config/providers.py
src/fleetpull/config/rate_limit.py
src/fleetpull/config/resolution.py
src/fleetpull/config/retry.py
src/fleetpull/config/root.py
src/fleetpull/config/sections.py
src/fleetpull/endpoints/__init__.py
src/fleetpull/endpoints/registry.py
src/fleetpull/endpoints/geotab/__init__.py
src/fleetpull/endpoints/geotab/_requests.py
src/fleetpull/endpoints/geotab/annotation_logs.py
src/fleetpull/endpoints/geotab/audits.py
src/fleetpull/endpoints/geotab/devices.py
src/fleetpull/endpoints/geotab/driver_changes.py
src/fleetpull/endpoints/geotab/duty_status_logs.py
src/fleetpull/endpoints/geotab/dvir_logs.py
src/fleetpull/endpoints/geotab/exception_events.py
src/fleetpull/endpoints/geotab/fault_data.py
src/fleetpull/endpoints/geotab/fill_ups.py
src/fleetpull/endpoints/geotab/fuel_and_energy_used.py
src/fleetpull/endpoints/geotab/fuel_tax_details.py
src/fleetpull/endpoints/geotab/log_records.py
src/fleetpull/endpoints/geotab/media_files.py
src/fleetpull/endpoints/geotab/shipment_logs.py
src/fleetpull/endpoints/geotab/status_data.py
src/fleetpull/endpoints/geotab/text_messages.py
src/fleetpull/endpoints/geotab/trips.py
src/fleetpull/endpoints/geotab/users.py
src/fleetpull/endpoints/motive/__init__.py
src/fleetpull/endpoints/motive/_spec_builders.py
src/fleetpull/endpoints/motive/driver_idle_rollups.py
src/fleetpull/endpoints/motive/driving_periods.py
src/fleetpull/endpoints/motive/groups.py
src/fleetpull/endpoints/motive/idle_events.py
src/fleetpull/endpoints/motive/users.py
src/fleetpull/endpoints/motive/vehicle_locations.py
src/fleetpull/endpoints/motive/vehicle_utilizations.py
src/fleetpull/endpoints/motive/vehicles.py
src/fleetpull/endpoints/samsara/__init__.py
src/fleetpull/endpoints/samsara/_spec_builders.py
src/fleetpull/endpoints/samsara/addresses.py
src/fleetpull/endpoints/samsara/asset_locations.py
src/fleetpull/endpoints/samsara/driver_fuel_energy_reports.py
src/fleetpull/endpoints/samsara/driver_vehicle_assignments.py
src/fleetpull/endpoints/samsara/drivers.py
src/fleetpull/endpoints/samsara/engine_states.py
src/fleetpull/endpoints/samsara/gps_readings.py
src/fleetpull/endpoints/samsara/idling_events.py
src/fleetpull/endpoints/samsara/odometer_readings.py
src/fleetpull/endpoints/samsara/trips.py
src/fleetpull/endpoints/samsara/vehicle_fuel_energy_reports.py
src/fleetpull/endpoints/samsara/vehicles.py
src/fleetpull/endpoints/shared/__init__.py
src/fleetpull/endpoints/shared/base.py
src/fleetpull/endpoints/shared/request_shape.py
src/fleetpull/endpoints/shared/resume.py
src/fleetpull/endpoints/shared/spec_builders.py
src/fleetpull/endpoints/shared/sync_mode.py
src/fleetpull/endpoints/shared/url_paths.py
src/fleetpull/incremental/__init__.py
src/fleetpull/incremental/cursor.py
src/fleetpull/incremental/resolution.py
src/fleetpull/incremental/seed.py
src/fleetpull/incremental/window.py
src/fleetpull/logger/__init__.py
src/fleetpull/logger/setup.py
src/fleetpull/model_contract/__init__.py
src/fleetpull/model_contract/coercions.py
src/fleetpull/model_contract/response.py
src/fleetpull/models/__init__.py
src/fleetpull/models/geotab/__init__.py
src/fleetpull/models/geotab/annotation_log.py
src/fleetpull/models/geotab/audit.py
src/fleetpull/models/geotab/device.py
src/fleetpull/models/geotab/driver_change.py
src/fleetpull/models/geotab/duty_status_log.py
src/fleetpull/models/geotab/dvir_log.py
src/fleetpull/models/geotab/exception_event.py
src/fleetpull/models/geotab/fault_data.py
src/fleetpull/models/geotab/fill_up.py
src/fleetpull/models/geotab/fuel_and_energy_used.py
src/fleetpull/models/geotab/fuel_tax_detail.py
src/fleetpull/models/geotab/log_record.py
src/fleetpull/models/geotab/media_file.py
src/fleetpull/models/geotab/shared.py
src/fleetpull/models/geotab/shipment_log.py
src/fleetpull/models/geotab/status_data.py
src/fleetpull/models/geotab/text_message.py
src/fleetpull/models/geotab/trip.py
src/fleetpull/models/geotab/user.py
src/fleetpull/models/motive/__init__.py
src/fleetpull/models/motive/driver_idle_rollup.py
src/fleetpull/models/motive/driving_period.py
src/fleetpull/models/motive/group.py
src/fleetpull/models/motive/idle_event.py
src/fleetpull/models/motive/shared.py
src/fleetpull/models/motive/user.py
src/fleetpull/models/motive/vehicle.py
src/fleetpull/models/motive/vehicle_location.py
src/fleetpull/models/motive/vehicle_utilization.py
src/fleetpull/models/samsara/__init__.py
src/fleetpull/models/samsara/address.py
src/fleetpull/models/samsara/asset_location.py
src/fleetpull/models/samsara/driver.py
src/fleetpull/models/samsara/driver_fuel_energy_report.py
src/fleetpull/models/samsara/driver_vehicle_assignment.py
src/fleetpull/models/samsara/engine_state.py
src/fleetpull/models/samsara/gps_reading.py
src/fleetpull/models/samsara/idling_event.py
src/fleetpull/models/samsara/odometer_reading.py
src/fleetpull/models/samsara/trip.py
src/fleetpull/models/samsara/vehicle.py
src/fleetpull/models/samsara/vehicle_fuel_energy_report.py
src/fleetpull/network/__init__.py
src/fleetpull/network/auth/__init__.py
src/fleetpull/network/auth/authenticate.py
src/fleetpull/network/auth/manager.py
src/fleetpull/network/auth/models.py
src/fleetpull/network/auth/strategies.py
src/fleetpull/network/classifiers/__init__.py
src/fleetpull/network/classifiers/geotab.py
src/fleetpull/network/classifiers/motive.py
src/fleetpull/network/classifiers/samsara.py
src/fleetpull/network/client/__init__.py
src/fleetpull/network/client/page.py
src/fleetpull/network/client/profile.py
src/fleetpull/network/client/registry.py
src/fleetpull/network/client/registry_base.py
src/fleetpull/network/client/runtime.py
src/fleetpull/network/client/transport.py
src/fleetpull/network/contract/__init__.py
src/fleetpull/network/contract/auth.py
src/fleetpull/network/contract/classifier.py
src/fleetpull/network/contract/envelope_fetcher.py
src/fleetpull/network/contract/envelopes.py
src/fleetpull/network/contract/outcome.py
src/fleetpull/network/contract/page_decoder.py
src/fleetpull/network/contract/request.py
src/fleetpull/network/decoders/__init__.py
src/fleetpull/network/decoders/_window_stamp.py
src/fleetpull/network/decoders/geotab.py
src/fleetpull/network/decoders/motive.py
src/fleetpull/network/decoders/motive_reports.py
src/fleetpull/network/decoders/samsara.py
src/fleetpull/network/decoders/samsara_reports.py
src/fleetpull/network/decoders/samsara_trips.py
src/fleetpull/network/decoders/single_page.py
src/fleetpull/network/limits/__init__.py
src/fleetpull/network/limits/bucket_math.py
src/fleetpull/network/limits/limiter.py
src/fleetpull/network/limits/registry.py
src/fleetpull/network/posture/__init__.py
src/fleetpull/network/posture/client_options.py
src/fleetpull/network/retry/__init__.py
src/fleetpull/network/retry/decision.py
src/fleetpull/network/tls/__init__.py
src/fleetpull/network/tls/truststore_context.py
src/fleetpull/orchestrator/__init__.py
src/fleetpull/orchestrator/backfill.py
src/fleetpull/orchestrator/batch.py
src/fleetpull/orchestrator/bisection.py
src/fleetpull/orchestrator/drivers.py
src/fleetpull/orchestrator/entry.py
src/fleetpull/orchestrator/executors.py
src/fleetpull/orchestrator/fanout.py
src/fleetpull/orchestrator/feed_drive.py
src/fleetpull/orchestrator/metadata_projection.py
src/fleetpull/orchestrator/outcome.py
src/fleetpull/orchestrator/recording.py
src/fleetpull/orchestrator/resume.py
src/fleetpull/orchestrator/roster_harvest.py
src/fleetpull/orchestrator/roster_refresh.py
src/fleetpull/orchestrator/runner.py
src/fleetpull/orchestrator/shape_resolution.py
src/fleetpull/orchestrator/spine.py
src/fleetpull/orchestrator/streaming.py
src/fleetpull/orchestrator/unit_loop.py
src/fleetpull/orchestrator/watermark_drive.py
src/fleetpull/paths/__init__.py
src/fleetpull/paths/datasets.py
src/fleetpull/paths/partitions.py
src/fleetpull/paths/resolution.py
src/fleetpull/polars_typing/__init__.py
src/fleetpull/records/__init__.py
src/fleetpull/records/convert.py
src/fleetpull/records/dataframe.py
src/fleetpull/records/event_time.py
src/fleetpull/records/fields.py
src/fleetpull/records/flatten.py
src/fleetpull/records/roster_members.py
src/fleetpull/records/schema.py
src/fleetpull/records/validation.py
src/fleetpull/resources/__init__.py
src/fleetpull/resources/config.example.yaml
src/fleetpull/roster/__init__.py
src/fleetpull/roster/definition.py
src/fleetpull/roster/key.py
src/fleetpull/roster/registry.py
src/fleetpull/state/__init__.py
src/fleetpull/state/cursors.py
src/fleetpull/state/database.py
src/fleetpull/state/migrations.py
src/fleetpull/state/reconcile.py
src/fleetpull/state/rosters.py
src/fleetpull/state/run_ledger.py
src/fleetpull/state/work_units.py
src/fleetpull/storage/__init__.py
src/fleetpull/storage/append.py
src/fleetpull/storage/atomic.py
src/fleetpull/storage/files.py
src/fleetpull/storage/frames.py
src/fleetpull/storage/metadata.py
src/fleetpull/storage/partitioned.py
src/fleetpull/storage/pruning.py
src/fleetpull/storage/read.py
src/fleetpull/storage/result.py
src/fleetpull/storage/single_file.py
src/fleetpull/storage/splitting.py
src/fleetpull/storage/staging.py
src/fleetpull/storage/writers.py
src/fleetpull/timing/__init__.py
src/fleetpull/timing/canon.py
src/fleetpull/timing/clock.py
src/fleetpull/timing/codec.py
src/fleetpull/timing/sleeper.py
src/fleetpull/vocabulary/__init__.py
src/fleetpull/vocabulary/json_types.py
src/fleetpull/vocabulary/provider.py
src/fleetpull/vocabulary/quota_scope.py
src/fleetpull/vocabulary/response_category.py
tests/test_cli.py
tests/test_exceptions.py
tests/test_import_discipline.py
tests/test_temporal_discipline.py
tests/test_typing_discipline.py