.gitignore
CHANGELOG.md
CONTEXT.md
LICENSE
pyproject.toml
readme.md
readme_ru.md
.github/workflows/publish.yml
airflow_provider_rmq/__init__.py
airflow_provider_rmq/_version.py
airflow_provider_rmq.egg-info/PKG-INFO
airflow_provider_rmq.egg-info/SOURCES.txt
airflow_provider_rmq.egg-info/dependency_links.txt
airflow_provider_rmq.egg-info/entry_points.txt
airflow_provider_rmq.egg-info/requires.txt
airflow_provider_rmq.egg-info/scm_file_list.json
airflow_provider_rmq.egg-info/scm_version.json
airflow_provider_rmq.egg-info/top_level.txt
airflow_provider_rmq/hooks/__init__.py
airflow_provider_rmq/hooks/rmq.py
airflow_provider_rmq/operators/__init__.py
airflow_provider_rmq/operators/rmq_consume.py
airflow_provider_rmq/operators/rmq_management.py
airflow_provider_rmq/operators/rmq_publish.py
airflow_provider_rmq/sensors/__init__.py
airflow_provider_rmq/sensors/rmq.py
airflow_provider_rmq/triggers/__init__.py
airflow_provider_rmq/triggers/rmq.py
airflow_provider_rmq/utils/__init__.py
airflow_provider_rmq/utils/amqp.py
airflow_provider_rmq/utils/backoff.py
airflow_provider_rmq/utils/executor.py
airflow_provider_rmq/utils/filters.py
airflow_provider_rmq/utils/management.py
airflow_provider_rmq/utils/metrics.py
airflow_provider_rmq/utils/ssl.py
airflow_provider_rmq/watcher/__init__.py
airflow_provider_rmq/watcher/consumer.py
airflow_provider_rmq/watcher/decorators.py
airflow_provider_rmq/watcher/listener.py
airflow_provider_rmq/watcher/models.py
airflow_provider_rmq/watcher/orphan_tracker.py
airflow_provider_rmq/watcher/plugin.py
airflow_provider_rmq/watcher/subscription_builder.py
airflow_provider_rmq/watcher/subscription_form.py
airflow_provider_rmq/watcher/tunables.py
airflow_provider_rmq/watcher/views.py
airflow_provider_rmq/watcher/templates/rmq_watcher/subscription_form.html
airflow_provider_rmq/watcher/templates/rmq_watcher/subscriptions.html
docs/live-verification.md
docs/adr/0001-message-filter-two-instantiation-paths.md
docs/adr/0002-four-consume-loops-not-unified.md
docs/adr/0003-ssl-and-amqp-utils-remain-separate.md
docs/adr/0004-routing-key-dual-api-shape.md
docs/adr/0005-exchange-orphan-no-auto-unbind.md
docs/adr/0006-badge-dag-lookup-not-unified-with-sync-trigger.md
docs/adr/0007-connection-liveness-two-tier-check.md
docs/backlog/active-dag-ids-full-scan.md
docs/backlog/ast-dag-id-resolution-incomplete.md
docs/backlog/ci-no-min-airflow-version.md
docs/backlog/cooldown-dag-never-serialized-invisible.md
docs/backlog/dag-badge-lookup-failure-invisible.md
docs/backlog/duplicated-consumer-loops.md
docs/backlog/exchange-change-leaves-old-bindings.md
docs/backlog/exchange-provision-branches-disagree.md
docs/backlog/filter-miss-spins-until-ttl.md
docs/backlog/reattach-restarts-the-warmup-count.md
docs/backlog/refusing-database-resets-tunables.md
docs/backlog/rmq-trigger-has-no-amqp-timeouts.md
docs/backlog/rmq-trigger-kwargs-silently-dropped.md
docs/backlog/status-cache-stale-across-replicas.md
docs/backlog/status-writers-registry-never-shrinks.md
docs/backlog/stop-event-replacement-revives-watcher.md
docs/backlog/warmup-loses-the-message-invisibly.md
docs/example_dags/rmq_consume_with_filters.py
docs/example_dags/rmq_dlq_setup.py
docs/example_dags/rmq_example.py
docs/example_dags/rmq_pipeline_lock.py
docs/example_dags/rmq_publish_advanced.py
docs/example_dags/rmq_sensor_deferrable.py
docs/example_dags/rmq_sensor_push.py
docs/example_dags/rmq_watcher_cooldown_multi_queue.py
docs/example_dags/rmq_watcher_jetstat_exchange.py
docs/example_dags/rmq_watcher_triggered_dag.py
docs/plans/20260703-reliability-hardening.md
docs/plans/20260831-listener-generation-ownership.md
docs/plans/completed/20260406-push-mode-trigger.md
docs/plans/completed/20260406-watcher-dag-factory.md
docs/plans/completed/20260601-rmq-watcher-plugin.md
docs/plans/completed/20260603-ast-dag-id-extraction.md
docs/plans/completed/20260603-rmq-watcher-audit-fixes.md
docs/plans/completed/20260615-multi-queue-cooldown-trigger.md
docs/plans/completed/20260619-exchange-trigger-subscriptions.md
docs/plans/completed/20260623-rmq-trigger-taskflow-dag-fix.md
docs/plans/completed/20260807-ast-dag-id-constant-resolution.md
docs/plans/completed/20260807-rmq-watcher-dag-not-found-badge.md
docs/plans/completed/20260827-watcher-connection-resilience.md
docs/plans/completed/20260829-watcher-audit-fixes.md
docs/plans/completed/20260831-watcher-status-truthfulness.md
tests/__init__.py
tests/conftest.py
tests/test_amqp_utils.py
tests/test_consume_operator.py
tests/test_executor.py
tests/test_filters.py
tests/test_hook.py
tests/test_management_operator.py
tests/test_management_utils.py
tests/test_metrics.py
tests/test_publish_operator.py
tests/test_sensor.py
tests/test_ssl_utils.py
tests/test_trigger.py
tests/watcher/__init__.py
tests/watcher/test_consumer.py
tests/watcher/test_decorators.py
tests/watcher/test_example_dags_dagbag.py
tests/watcher/test_listener.py
tests/watcher/test_models.py
tests/watcher/test_orphan_tracker.py
tests/watcher/test_plugin.py
tests/watcher/test_subscription_builder.py
tests/watcher/test_subscription_form.py
tests/watcher/test_views.py