LICENSE
MANIFEST.in
README.md
pyproject.toml
src/duckstring/__init__.py
src/duckstring/__main__.py
src/duckstring/acc.py
src/duckstring/agg.py
src/duckstring/core.py
src/duckstring/dataplane.py
src/duckstring/iceberg_catalog.py
src/duckstring/iceberg_plane.py
src/duckstring/keys.py
src/duckstring/objects.py
src/duckstring/schema_contract.py
src/duckstring/storage.py
src/duckstring/trickle_builder.py
src/duckstring/trickle_io.py
src/duckstring/utils.py
src/duckstring.egg-info/PKG-INFO
src/duckstring.egg-info/SOURCES.txt
src/duckstring.egg-info/dependency_links.txt
src/duckstring.egg-info/entry_points.txt
src/duckstring.egg-info/requires.txt
src/duckstring.egg-info/top_level.txt
src/duckstring/alerts/__init__.py
src/duckstring/alerts/base.py
src/duckstring/alerts/email.py
src/duckstring/alerts/event.py
src/duckstring/alerts/webhook.py
src/duckstring/catchment/__init__.py
src/duckstring/catchment/alert_worker.py
src/duckstring/catchment/app.py
src/duckstring/catchment/asgi.py
src/duckstring/catchment/auth.py
src/duckstring/catchment/dag.py
src/duckstring/catchment/data_lease.py
src/duckstring/catchment/db.py
src/duckstring/catchment/driver.py
src/duckstring/catchment/egress_worker.py
src/duckstring/catchment/launcher.py
src/duckstring/catchment/poller.py
src/duckstring/catchment/registry.py
src/duckstring/catchment/secrets.py
src/duckstring/catchment/state_sync.py
src/duckstring/catchment/routes/__init__.py
src/duckstring/catchment/routes/alerts.py
src/duckstring/catchment/routes/catchment.py
src/duckstring/catchment/routes/data.py
src/duckstring/catchment/routes/deploy.py
src/duckstring/catchment/routes/draw.py
src/duckstring/catchment/routes/duck.py
src/duckstring/catchment/routes/duct.py
src/duckstring/catchment/routes/metrics.py
src/duckstring/catchment/routes/orchestrate.py
src/duckstring/catchment/routes/secrets.py
src/duckstring/catchment/routes/view.py
src/duckstring/catchment/schema/001_init.sql
src/duckstring/catchment/schema/002_ducts.sql
src/duckstring/catchment/schema/003_pull_m.sql
src/duckstring/catchment/schema/004_identity.sql
src/duckstring/catchment/schema/005_pond_version_schema.sql
src/duckstring/catchment/schema/006_refresh.sql
src/duckstring/catchment/schema/007_catchment_key.sql
src/duckstring/catchment/schema/008_spout.sql
src/duckstring/catchment/schema/009_spout_state.sql
src/duckstring/catchment/schema/010_spout_wake.sql
src/duckstring/catchment/schema/011_spout_window.sql
src/duckstring/catchment/schema/012_spout_node.sql
src/duckstring/catchment/schema/013_changed_f.sql
src/duckstring/catchment/schema/014_alert.sql
src/duckstring/catchment/schema/016_alert_scope_major.sql
src/duckstring/catchment/static/404.html
src/duckstring/catchment/static/__next.__PAGE__.txt
src/duckstring/catchment/static/__next._full.txt
src/duckstring/catchment/static/__next._head.txt
src/duckstring/catchment/static/__next._index.txt
src/duckstring/catchment/static/__next._tree.txt
src/duckstring/catchment/static/_not-found.html
src/duckstring/catchment/static/_not-found.txt
src/duckstring/catchment/static/favicon.svg
src/duckstring/catchment/static/index.html
src/duckstring/catchment/static/index.txt
src/duckstring/catchment/static/logo-mark.svg
src/duckstring/catchment/static/logo.svg
src/duckstring/catchment/static/_next/static/K01gZbd5BTz315upsZeJJ/_buildManifest.js
src/duckstring/catchment/static/_next/static/K01gZbd5BTz315upsZeJJ/_clientMiddlewareManifest.js
src/duckstring/catchment/static/_next/static/K01gZbd5BTz315upsZeJJ/_ssgManifest.js
src/duckstring/catchment/static/_next/static/chunks/03~yq9q893hmn.js
src/duckstring/catchment/static/_next/static/chunks/07lhk_q6pmm3r.js
src/duckstring/catchment/static/_next/static/chunks/0dbhjjzl8qfwv.js
src/duckstring/catchment/static/_next/static/chunks/0jvmviuftg5e2.css
src/duckstring/catchment/static/_next/static/chunks/0kczw6usu-y-f.js
src/duckstring/catchment/static/_next/static/chunks/0p30fzde51na5.css
src/duckstring/catchment/static/_next/static/chunks/0qdnkaffkg.2-.js
src/duckstring/catchment/static/_next/static/chunks/11kjahy2ntf0n.js
src/duckstring/catchment/static/_next/static/chunks/turbopack-03~mbvk_uplk_.js
src/duckstring/catchment/static/_not-found/__next._full.txt
src/duckstring/catchment/static/_not-found/__next._head.txt
src/duckstring/catchment/static/_not-found/__next._index.txt
src/duckstring/catchment/static/_not-found/__next._not-found.__PAGE__.txt
src/duckstring/catchment/static/_not-found/__next._not-found.txt
src/duckstring/catchment/static/_not-found/__next._tree.txt
src/duckstring/cli/__init__.py
src/duckstring/cli/_http.py
src/duckstring/cli/alert.py
src/duckstring/cli/bulk.py
src/duckstring/cli/catchment.py
src/duckstring/cli/config.py
src/duckstring/cli/control.py
src/duckstring/cli/data.py
src/duckstring/cli/deploy.py
src/duckstring/cli/duct.py
src/duckstring/cli/pond.py
src/duckstring/cli/puddle.py
src/duckstring/cli/secret.py
src/duckstring/cli/spout.py
src/duckstring/cli/status.py
src/duckstring/cli/trigger.py
src/duckstring/cli/window.py
src/duckstring/demo/catalog/.gitignore
src/duckstring/demo/catalog/README.md
src/duckstring/demo/catalog/pond.toml
src/duckstring/demo/catalog/src/pond.py
src/duckstring/demo/orders/.gitignore
src/duckstring/demo/orders/README.md
src/duckstring/demo/orders/pond.toml
src/duckstring/demo/orders/src/pond.py
src/duckstring/demo/priced/.gitignore
src/duckstring/demo/priced/README.md
src/duckstring/demo/priced/pond.toml
src/duckstring/demo/priced/src/pond.py
src/duckstring/demo/priced/src/puddles.py
src/duckstring/demo/products/.gitignore
src/duckstring/demo/products/README.md
src/duckstring/demo/products/pond.toml
src/duckstring/demo/products/src/pond.py
src/duckstring/demo/reports/.gitignore
src/duckstring/demo/reports/README.md
src/duckstring/demo/reports/pond.toml
src/duckstring/demo/reports/src/pond.py
src/duckstring/demo/revenue/.gitignore
src/duckstring/demo/revenue/README.md
src/duckstring/demo/revenue/pond.toml
src/duckstring/demo/revenue/src/pond.py
src/duckstring/demo/revenue/src/puddles.py
src/duckstring/demo/sales/.gitignore
src/duckstring/demo/sales/README.md
src/duckstring/demo/sales/pond.toml
src/duckstring/demo/sales/src/pond.py
src/duckstring/demo/sales/src/puddles.py
src/duckstring/demo/transactions/.gitignore
src/duckstring/demo/transactions/README.md
src/duckstring/demo/transactions/pond.toml
src/duckstring/demo/transactions/src/pond.py
src/duckstring/duck/__init__.py
src/duckstring/duck/__main__.py
src/duckstring/duck/client.py
src/duckstring/duck/core.py
src/duckstring/duck/executor.py
src/duckstring/egress/__init__.py
src/duckstring/egress/base.py
src/duckstring/egress/credentials.py
src/duckstring/egress/destination.py
src/duckstring/egress/object_store.py
src/duckstring/egress/postgres.py
src/duckstring/engine/__init__.py
src/duckstring/engine/catchment.py
src/duckstring/engine/core.py
src/duckstring/engine/pond.py
src/duckstring/engine/worker.py
src/duckstring/local/__init__.py
src/duckstring/local/hydrate.py
src/duckstring/local/project.py
src/duckstring/local/runner.py
src/duckstring/trickle/__init__.py
src/duckstring/trickle/acc.py
src/duckstring/trickle/agg.py
src/duckstring/trickle/builder.py
src/duckstring/trickle/context.py
src/duckstring/trickle/io.py