atlan-application-sdk 1.0.4__tar.gz → 1.1.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (431) hide show
  1. atlan_application_sdk-1.1.0/.cursor/rules/commits.mdc +124 -0
  2. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.github/pull_request_template.md +1 -4
  3. atlan_application_sdk-1.1.0/.github/release_notes.md +7 -0
  4. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/CHANGELOG.md +9 -0
  5. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/CODE_OF_CONDUCT.md +1 -1
  6. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/PKG-INFO +2 -3
  7. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/README.md +1 -2
  8. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/activities/__init__.py +6 -0
  9. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/clients/temporal.py +4 -0
  10. atlan_application_sdk-1.1.0/application_sdk/interceptors/correlation_context.py +143 -0
  11. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/interceptors/events.py +0 -2
  12. atlan_application_sdk-1.1.0/application_sdk/observability/context.py +18 -0
  13. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/observability/logger_adaptor.py +61 -68
  14. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/observability/utils.py +16 -1
  15. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/server/fastapi/middleware/logmiddleware.py +2 -1
  16. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/version.py +1 -1
  17. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/docs/docs/guides/atlantis.md +1 -3
  18. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/docs/docs/index.md +0 -1
  19. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/pyproject.toml +1 -1
  20. atlan_application_sdk-1.1.0/tests/unit/interceptors/test_correlation_context.py +430 -0
  21. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/observability/test_logger_adaptor.py +240 -0
  22. atlan_application_sdk-1.1.0/tests/unit/transformers/atlas/__init__.py +0 -0
  23. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/uv.lock +1 -1
  24. atlan_application_sdk-1.0.4/.github/release_notes.md +0 -7
  25. atlan_application_sdk-1.0.4/docs/docs/guides/partners.md +0 -107
  26. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.cursor/BUGBOT.md +0 -0
  27. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.cursor/rules/documentation.mdc +0 -0
  28. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.cursor/rules/exception-handling.mdc +0 -0
  29. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.cursor/rules/guidelines.mdc +0 -0
  30. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.cursor/rules/logging.mdc +0 -0
  31. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.cursor/rules/performance.mdc +0 -0
  32. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.cursor/rules/setup.mdc +0 -0
  33. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.cursor/rules/standards.mdc +0 -0
  34. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.cursor/rules/testing.mdc +0 -0
  35. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.env.example +0 -0
  36. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.github/CODEOWNERS +0 -0
  37. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.github/ISSUE_TEMPLATE/bug_report.yaml +0 -0
  38. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.github/ISSUE_TEMPLATE/config.yaml +0 -0
  39. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.github/ISSUE_TEMPLATE/feature_request.yaml +0 -0
  40. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.github/actions/docgen/action.yaml +0 -0
  41. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.github/actions/doclint/action.yaml +0 -0
  42. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.github/actions/docstring-coverage/action.yaml +0 -0
  43. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.github/actions/e2e-apps/action.yaml +0 -0
  44. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.github/actions/e2e-examples/action.yaml +0 -0
  45. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.github/actions/setup-deps/action.yaml +0 -0
  46. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.github/actions/sync-branches/action.yaml +0 -0
  47. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.github/actions/trivy/action.yaml +0 -0
  48. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.github/actions/trivy-container/action.yaml +0 -0
  49. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.github/actions/unit-tests/action.yaml +0 -0
  50. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.github/dependabot.yaml +0 -0
  51. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.github/scripts/extract_release_notes.py +0 -0
  52. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.github/scripts/release.py +0 -0
  53. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.github/scripts/trivy-to-markdown.py +0 -0
  54. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.github/scripts/update_changelog.py +0 -0
  55. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.github/styles/Microsoft/AMPM.yml +0 -0
  56. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.github/styles/Microsoft/Accessibility.yml +0 -0
  57. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.github/styles/Microsoft/Acronyms.yml +0 -0
  58. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.github/styles/Microsoft/Adverbs.yml +0 -0
  59. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.github/styles/Microsoft/Auto.yml +0 -0
  60. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.github/styles/Microsoft/Avoid.yml +0 -0
  61. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.github/styles/Microsoft/Contractions.yml +0 -0
  62. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.github/styles/Microsoft/Dashes.yml +0 -0
  63. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.github/styles/Microsoft/DateFormat.yml +0 -0
  64. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.github/styles/Microsoft/DateNumbers.yml +0 -0
  65. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.github/styles/Microsoft/DateOrder.yml +0 -0
  66. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.github/styles/Microsoft/Ellipses.yml +0 -0
  67. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.github/styles/Microsoft/FirstPerson.yml +0 -0
  68. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.github/styles/Microsoft/Foreign.yml +0 -0
  69. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.github/styles/Microsoft/Gender.yml +0 -0
  70. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.github/styles/Microsoft/GenderBias.yml +0 -0
  71. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.github/styles/Microsoft/GeneralURL.yml +0 -0
  72. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.github/styles/Microsoft/HeadingAcronyms.yml +0 -0
  73. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.github/styles/Microsoft/HeadingColons.yml +0 -0
  74. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.github/styles/Microsoft/HeadingPunctuation.yml +0 -0
  75. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.github/styles/Microsoft/Headings.yml +0 -0
  76. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.github/styles/Microsoft/Hyphens.yml +0 -0
  77. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.github/styles/Microsoft/Negative.yml +0 -0
  78. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.github/styles/Microsoft/Ordinal.yml +0 -0
  79. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.github/styles/Microsoft/OxfordComma.yml +0 -0
  80. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.github/styles/Microsoft/Passive.yml +0 -0
  81. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.github/styles/Microsoft/Percentages.yml +0 -0
  82. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.github/styles/Microsoft/Plurals.yml +0 -0
  83. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.github/styles/Microsoft/Quotes.yml +0 -0
  84. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.github/styles/Microsoft/RangeTime.yml +0 -0
  85. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.github/styles/Microsoft/Semicolon.yml +0 -0
  86. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.github/styles/Microsoft/SentenceLength.yml +0 -0
  87. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.github/styles/Microsoft/Spacing.yml +0 -0
  88. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.github/styles/Microsoft/Suspended.yml +0 -0
  89. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.github/styles/Microsoft/Terms.yml +0 -0
  90. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.github/styles/Microsoft/URLFormat.yml +0 -0
  91. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.github/styles/Microsoft/Units.yml +0 -0
  92. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.github/styles/Microsoft/Vocab.yml +0 -0
  93. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.github/styles/Microsoft/We.yml +0 -0
  94. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.github/styles/Microsoft/Wordiness.yml +0 -0
  95. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.github/styles/Microsoft/meta.json +0 -0
  96. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.github/styles/config/vocabularies/deviations/accept.txt +0 -0
  97. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.github/styles/config/vocabularies/deviations/reject.txt +0 -0
  98. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.github/workflow-templates/checks.properties.json +0 -0
  99. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.github/workflow-templates/checks.yaml +0 -0
  100. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.github/workflow-templates/codeql.properties.json +0 -0
  101. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.github/workflow-templates/codeql.yaml +0 -0
  102. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.github/workflow-templates/dependency-review.properties.json +0 -0
  103. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.github/workflow-templates/dependency-review.yml +0 -0
  104. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.github/workflow-templates/stale.properties.json +0 -0
  105. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.github/workflow-templates/stale.yml +0 -0
  106. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.github/workflow-templates/trivy-container.properties.json +0 -0
  107. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.github/workflow-templates/trivy-container.yaml +0 -0
  108. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.github/workflow-templates/trivy.properties.json +0 -0
  109. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.github/workflow-templates/trivy.yaml +0 -0
  110. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.github/workflows/codeql.yaml +0 -0
  111. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.github/workflows/pull_request.yaml +0 -0
  112. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.github/workflows/push.yaml +0 -0
  113. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.github/workflows/release.yaml +0 -0
  114. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.github/workflows/scale-tests.yaml +0 -0
  115. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.github/workflows/schedule.yaml +0 -0
  116. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.github/workflows/tag-and-publish.yaml +0 -0
  117. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.github/workflows/trivy-container.yaml +0 -0
  118. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.github/workflows/verify-snyk-status.yml +0 -0
  119. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.gitignore +0 -0
  120. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.pre-commit-config.yaml +0 -0
  121. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/.vscode/launch.json +0 -0
  122. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/CONTRIBUTING.md +0 -0
  123. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/LICENSE +0 -0
  124. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/NOTICE +0 -0
  125. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/SECURITY.md +0 -0
  126. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/__init__.py +0 -0
  127. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/activities/.cursor/BUGBOT.md +0 -0
  128. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/activities/common/__init__.py +0 -0
  129. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/activities/common/models.py +0 -0
  130. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/activities/common/utils.py +0 -0
  131. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/activities/lock_management.py +0 -0
  132. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/activities/metadata_extraction/__init__.py +0 -0
  133. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/activities/metadata_extraction/base.py +0 -0
  134. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/activities/metadata_extraction/rest.py +0 -0
  135. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/activities/metadata_extraction/sql.py +0 -0
  136. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/activities/query_extraction/__init__.py +0 -0
  137. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/activities/query_extraction/sql.py +0 -0
  138. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/application/__init__.py +0 -0
  139. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/application/metadata_extraction/sql.py +0 -0
  140. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/clients/.cursor/BUGBOT.md +0 -0
  141. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/clients/__init__.py +0 -0
  142. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/clients/atlan.py +0 -0
  143. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/clients/atlan_auth.py +0 -0
  144. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/clients/base.py +0 -0
  145. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/clients/models.py +0 -0
  146. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/clients/redis.py +0 -0
  147. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/clients/sql.py +0 -0
  148. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/clients/utils.py +0 -0
  149. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/clients/workflow.py +0 -0
  150. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/common/.cursor/BUGBOT.md +0 -0
  151. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/common/__init__.py +0 -0
  152. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/common/aws_utils.py +0 -0
  153. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/common/dapr_utils.py +0 -0
  154. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/common/dataframe_utils.py +0 -0
  155. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/common/error_codes.py +0 -0
  156. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/common/file_converter.py +0 -0
  157. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/common/utils.py +0 -0
  158. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/constants.py +0 -0
  159. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/decorators/.cursor/BUGBOT.md +0 -0
  160. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/decorators/__init__.py +0 -0
  161. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/decorators/locks.py +0 -0
  162. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/decorators/mcp_tool.py +0 -0
  163. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/docgen/__init__.py +0 -0
  164. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/docgen/exporters/__init__.py +0 -0
  165. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/docgen/exporters/mkdocs.py +0 -0
  166. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/docgen/models/__init__.py +0 -0
  167. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/docgen/models/export/__init__.py +0 -0
  168. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/docgen/models/export/page.py +0 -0
  169. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/docgen/models/manifest/__init__.py +0 -0
  170. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/docgen/models/manifest/customer.py +0 -0
  171. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/docgen/models/manifest/internal.py +0 -0
  172. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/docgen/models/manifest/metadata.py +0 -0
  173. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/docgen/models/manifest/page.py +0 -0
  174. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/docgen/models/manifest/section.py +0 -0
  175. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/docgen/parsers/__init__.py +0 -0
  176. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/docgen/parsers/directory.py +0 -0
  177. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/docgen/parsers/manifest.py +0 -0
  178. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/events/__init__.py +0 -0
  179. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/events/models.py +0 -0
  180. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/handlers/__init__.py +0 -0
  181. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/handlers/base.py +0 -0
  182. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/handlers/sql.py +0 -0
  183. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/inputs/.cursor/BUGBOT.md +0 -0
  184. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/inputs/__init__.py +0 -0
  185. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/inputs/iceberg.py +0 -0
  186. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/inputs/json.py +0 -0
  187. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/inputs/parquet.py +0 -0
  188. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/inputs/sql_query.py +0 -0
  189. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/interceptors/.cursor/BUGBOT.md +0 -0
  190. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/interceptors/__init__.py +0 -0
  191. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/interceptors/cleanup.py +0 -0
  192. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/interceptors/lock.py +0 -0
  193. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/observability/__init__.py +0 -0
  194. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/observability/decorators/observability_decorator.py +0 -0
  195. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/observability/metrics_adaptor.py +0 -0
  196. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/observability/observability.py +0 -0
  197. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/observability/traces_adaptor.py +0 -0
  198. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/outputs/.cursor/BUGBOT.md +0 -0
  199. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/outputs/__init__.py +0 -0
  200. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/outputs/iceberg.py +0 -0
  201. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/outputs/json.py +0 -0
  202. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/outputs/parquet.py +0 -0
  203. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/server/.cursor/BUGBOT.md +0 -0
  204. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/server/__init__.py +0 -0
  205. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/server/fastapi/__init__.py +0 -0
  206. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/server/fastapi/middleware/metrics.py +0 -0
  207. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/server/fastapi/models.py +0 -0
  208. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/server/fastapi/routers/__init__.py +0 -0
  209. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/server/fastapi/routers/server.py +0 -0
  210. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/server/fastapi/utils.py +0 -0
  211. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/server/mcp/__init__.py +0 -0
  212. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/server/mcp/models.py +0 -0
  213. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/server/mcp/server.py +0 -0
  214. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/services/__init__.py +0 -0
  215. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/services/atlan_storage.py +0 -0
  216. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/services/eventstore.py +0 -0
  217. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/services/objectstore.py +0 -0
  218. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/services/secretstore.py +0 -0
  219. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/services/statestore.py +0 -0
  220. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/test_utils/__init__.py +0 -0
  221. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/test_utils/e2e/__init__.py +0 -0
  222. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/test_utils/e2e/base.py +0 -0
  223. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/test_utils/e2e/client.py +0 -0
  224. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/test_utils/e2e/conftest.py +0 -0
  225. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/test_utils/e2e/utils.py +0 -0
  226. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/test_utils/hypothesis/__init__.py +0 -0
  227. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/test_utils/hypothesis/strategies/__init__.py +0 -0
  228. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/test_utils/hypothesis/strategies/clients/__init__.py +0 -0
  229. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/test_utils/hypothesis/strategies/clients/sql.py +0 -0
  230. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/test_utils/hypothesis/strategies/common/__init__.py +0 -0
  231. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/test_utils/hypothesis/strategies/common/logger.py +0 -0
  232. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/test_utils/hypothesis/strategies/handlers/__init__.py +0 -0
  233. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/test_utils/hypothesis/strategies/handlers/sql/__init__.py +0 -0
  234. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/test_utils/hypothesis/strategies/handlers/sql/sql_metadata.py +0 -0
  235. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/test_utils/hypothesis/strategies/handlers/sql/sql_preflight.py +0 -0
  236. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/test_utils/hypothesis/strategies/inputs/__init__.py +0 -0
  237. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/test_utils/hypothesis/strategies/inputs/json_input.py +0 -0
  238. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/test_utils/hypothesis/strategies/inputs/parquet_input.py +0 -0
  239. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/test_utils/hypothesis/strategies/outputs/__init__.py +0 -0
  240. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/test_utils/hypothesis/strategies/outputs/json_output.py +0 -0
  241. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/test_utils/hypothesis/strategies/outputs/statestore.py +0 -0
  242. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/test_utils/hypothesis/strategies/server/__init__.py +0 -0
  243. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/test_utils/hypothesis/strategies/server/fastapi/__init__.py +0 -0
  244. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/test_utils/hypothesis/strategies/sql_client.py +0 -0
  245. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/test_utils/hypothesis/strategies/temporal.py +0 -0
  246. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/test_utils/scale_data_generator/README.md +0 -0
  247. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/test_utils/scale_data_generator/__init__.py +0 -0
  248. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/test_utils/scale_data_generator/config_loader.py +0 -0
  249. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/test_utils/scale_data_generator/data_generator.py +0 -0
  250. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/test_utils/scale_data_generator/driver.py +0 -0
  251. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/test_utils/scale_data_generator/examples/config.yaml +0 -0
  252. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/test_utils/scale_data_generator/output_handler/__init__.py +0 -0
  253. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/test_utils/scale_data_generator/output_handler/base.py +0 -0
  254. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/test_utils/scale_data_generator/output_handler/csv_handler.py +0 -0
  255. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/test_utils/scale_data_generator/output_handler/json_handler.py +0 -0
  256. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/test_utils/scale_data_generator/output_handler/parquet_handler.py +0 -0
  257. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/test_utils/workflow_monitoring.py +0 -0
  258. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/transformers/__init__.py +0 -0
  259. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/transformers/atlas/__init__.py +0 -0
  260. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/transformers/atlas/sql.py +0 -0
  261. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/transformers/common/__init__.py +0 -0
  262. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/transformers/common/utils.py +0 -0
  263. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/transformers/query/__init__.py +0 -0
  264. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/transformers/query/templates/column.yaml +0 -0
  265. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/transformers/query/templates/database.yaml +0 -0
  266. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/transformers/query/templates/extras-procedure.yaml +0 -0
  267. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/transformers/query/templates/function.yaml +0 -0
  268. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/transformers/query/templates/schema.yaml +0 -0
  269. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/transformers/query/templates/table.yaml +0 -0
  270. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/transformers/query/templates/tag_attachment.yaml +0 -0
  271. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/worker.py +0 -0
  272. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/workflows/.cursor/BUGBOT.md +0 -0
  273. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/workflows/__init__.py +0 -0
  274. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/workflows/metadata_extraction/__init__.py +0 -0
  275. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/workflows/metadata_extraction/sql.py +0 -0
  276. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/workflows/query_extraction/__init__.py +0 -0
  277. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/application_sdk/workflows/query_extraction/sql.py +0 -0
  278. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/components/README.md +0 -0
  279. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/components/atlan-storage.yaml +0 -0
  280. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/components/aws-secrets.yaml +0 -0
  281. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/components/configuration.yaml +0 -0
  282. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/components/deployment-secrets.yaml +0 -0
  283. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/components/eventstore.yaml +0 -0
  284. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/components/objectstore.yaml +0 -0
  285. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/components/secretstore.yaml +0 -0
  286. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/components/statestore.yaml +0 -0
  287. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/docs/docs/concepts/API.md +0 -0
  288. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/docs/docs/concepts/activities.md +0 -0
  289. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/docs/docs/concepts/application.md +0 -0
  290. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/docs/docs/concepts/application_sql.md +0 -0
  291. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/docs/docs/concepts/atlanupload.md +0 -0
  292. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/docs/docs/concepts/clients.md +0 -0
  293. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/docs/docs/concepts/common.md +0 -0
  294. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/docs/docs/concepts/handlers.md +0 -0
  295. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/docs/docs/concepts/inputs.md +0 -0
  296. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/docs/docs/concepts/mcp.md +0 -0
  297. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/docs/docs/concepts/output_paths.md +0 -0
  298. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/docs/docs/concepts/outputs.md +0 -0
  299. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/docs/docs/concepts/server.md +0 -0
  300. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/docs/docs/concepts/services.md +0 -0
  301. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/docs/docs/concepts/temporal_auth.md +0 -0
  302. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/docs/docs/concepts/worker.md +0 -0
  303. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/docs/docs/concepts/workflows.md +0 -0
  304. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/docs/docs/configuration.md +0 -0
  305. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/docs/docs/guides/architecture.md +0 -0
  306. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/docs/docs/guides/best-practices.md +0 -0
  307. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/docs/docs/guides/getting-started.md +0 -0
  308. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/docs/docs/guides/index.md +0 -0
  309. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/docs/docs/guides/secretstores.md +0 -0
  310. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/docs/docs/guides/sql-application-guide.md +0 -0
  311. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/docs/docs/guides/test-framework.md +0 -0
  312. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/docs/docs/setup/LINUX.md +0 -0
  313. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/docs/docs/setup/MAC.md +0 -0
  314. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/docs/docs/setup/WINDOWS.md +0 -0
  315. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/docs/docs/setup/troubleshooting.md +0 -0
  316. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/docs/docs/static/assets/logo.svg +0 -0
  317. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/docs/docs/static/images/phoenix-sdk-featureset.png +0 -0
  318. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/docs/docs/static/javascripts/mathjax.js +0 -0
  319. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/docs/docs/static/stylesheets/extra.css +0 -0
  320. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/docs/mkdocs.yml +0 -0
  321. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/examples/README.md +0 -0
  322. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/examples/application_custom_fastapi.py +0 -0
  323. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/examples/application_fastapi.py +0 -0
  324. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/examples/application_hello_world.py +0 -0
  325. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/examples/application_sql.py +0 -0
  326. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/examples/application_sql_miner.py +0 -0
  327. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/examples/application_sql_with_custom_pyatlan_transformer.py +0 -0
  328. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/examples/application_sql_with_custom_transformer.py +0 -0
  329. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/examples/run_examples.py +0 -0
  330. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/examples/sql_query_templates/database.yaml +0 -0
  331. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/.cursor/BUGBOT.md +0 -0
  332. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/__init__.py +0 -0
  333. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/conftest.py +0 -0
  334. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/__init__.py +0 -0
  335. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/activities/__init__.py +0 -0
  336. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/activities/common/__init__.py +0 -0
  337. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/activities/common/test_utils.py +0 -0
  338. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/activities/metadata_extraction/__init__.py +0 -0
  339. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/activities/metadata_extraction/test_sql.py +0 -0
  340. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/activities/query_extraction/__init__.py +0 -0
  341. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/activities/test_activities.py +0 -0
  342. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/activities/test_lock_management.py +0 -0
  343. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/application/__init__.py +0 -0
  344. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/application/metadata_extraction/test_sql.py +0 -0
  345. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/application/test_application.py +0 -0
  346. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/clients/__init__.py +0 -0
  347. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/clients/test_async_sql_client.py +0 -0
  348. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/clients/test_atlan_auth.py +0 -0
  349. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/clients/test_atlan_client.py +0 -0
  350. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/clients/test_atlanauth.py +0 -0
  351. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/clients/test_base_client.py +0 -0
  352. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/clients/test_redis_client.py +0 -0
  353. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/clients/test_sql_client.py +0 -0
  354. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/clients/test_temporal_client.py +0 -0
  355. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/common/test_aws_utils.py +0 -0
  356. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/common/test_credential_utils.py +0 -0
  357. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/common/test_file_converter.py +0 -0
  358. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/common/test_utils.py +0 -0
  359. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/common/test_utils_file_discovery.py +0 -0
  360. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/decorators/__init__.py +0 -0
  361. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/decorators/test_mcp_tool.py +0 -0
  362. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/docgen/parsers/test_directory_parser.py +0 -0
  363. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/docgen/parsers/test_manifest_parser.py +0 -0
  364. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/handlers/__init__.py +0 -0
  365. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/handlers/sql/test_auth.py +0 -0
  366. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/handlers/sql/test_check_schemas_and_databases.py +0 -0
  367. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/handlers/sql/test_extract_allowed_schemas.py +0 -0
  368. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/handlers/sql/test_metadata.py +0 -0
  369. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/handlers/sql/test_preflight_check.py +0 -0
  370. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/handlers/sql/test_prepare_metadata.py +0 -0
  371. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/handlers/sql/test_tables_check.py +0 -0
  372. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/handlers/sql/test_validate_filters.py +0 -0
  373. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/handlers/test_base_handler.py +0 -0
  374. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/inputs/test_base_input.py +0 -0
  375. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/inputs/test_json.py +0 -0
  376. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/inputs/test_parquet.py +0 -0
  377. {atlan_application_sdk-1.0.4/tests/unit/observability → atlan_application_sdk-1.1.0/tests/unit/interceptors}/__init__.py +0 -0
  378. {atlan_application_sdk-1.0.4/tests/unit/server → atlan_application_sdk-1.1.0/tests/unit/observability}/__init__.py +0 -0
  379. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/observability/test_metrics_adaptor.py +0 -0
  380. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/observability/test_traces_adaptor.py +0 -0
  381. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/outputs/test_iceberg.py +0 -0
  382. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/outputs/test_json_output.py +0 -0
  383. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/outputs/test_output.py +0 -0
  384. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/outputs/test_parquet_output.py +0 -0
  385. {atlan_application_sdk-1.0.4/tests/unit/server/fastapi/routers → atlan_application_sdk-1.1.0/tests/unit/server}/__init__.py +0 -0
  386. {atlan_application_sdk-1.0.4/tests/unit/server/mcp → atlan_application_sdk-1.1.0/tests/unit/server/fastapi/routers}/__init__.py +0 -0
  387. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/server/fastapi/routers/server.py +0 -0
  388. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/server/fastapi/test_fastapi.py +0 -0
  389. {atlan_application_sdk-1.0.4/tests/unit/transformers → atlan_application_sdk-1.1.0/tests/unit/server/mcp}/__init__.py +0 -0
  390. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/server/mcp/test_mcp_server.py +0 -0
  391. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/services/test_atlan_storage.py +0 -0
  392. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/services/test_eventstore.py +0 -0
  393. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/services/test_objectstore.py +0 -0
  394. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/services/test_statestore.py +0 -0
  395. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/test_worker.py +0 -0
  396. {atlan_application_sdk-1.0.4/tests/unit/transformers/atlas → atlan_application_sdk-1.1.0/tests/unit/transformers}/__init__.py +0 -0
  397. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/transformers/atlas/resources/raw_columns.json +0 -0
  398. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/transformers/atlas/resources/raw_databases.json +0 -0
  399. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/transformers/atlas/resources/raw_functions.json +0 -0
  400. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/transformers/atlas/resources/raw_procedures.json +0 -0
  401. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/transformers/atlas/resources/raw_schemas.json +0 -0
  402. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/transformers/atlas/resources/raw_tables.json +0 -0
  403. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/transformers/atlas/resources/transformed_columns.json +0 -0
  404. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/transformers/atlas/resources/transformed_databases.json +0 -0
  405. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/transformers/atlas/resources/transformed_functions.json +0 -0
  406. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/transformers/atlas/resources/transformed_procedures.json +0 -0
  407. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/transformers/atlas/resources/transformed_schemas.json +0 -0
  408. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/transformers/atlas/resources/transformed_tables.json +0 -0
  409. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/transformers/atlas/test_column.py +0 -0
  410. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/transformers/atlas/test_database.py +0 -0
  411. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/transformers/atlas/test_function.py +0 -0
  412. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/transformers/atlas/test_procedure.py +0 -0
  413. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/transformers/atlas/test_schema.py +0 -0
  414. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/transformers/atlas/test_table.py +0 -0
  415. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/transformers/query/resources/raw/column.json +0 -0
  416. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/transformers/query/resources/raw/database.json +0 -0
  417. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/transformers/query/resources/raw/extras-procedure.json +0 -0
  418. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/transformers/query/resources/raw/function.json +0 -0
  419. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/transformers/query/resources/raw/schema.json +0 -0
  420. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/transformers/query/resources/raw/table.json +0 -0
  421. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/transformers/query/resources/transformed/column.json +0 -0
  422. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/transformers/query/resources/transformed/database.json +0 -0
  423. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/transformers/query/resources/transformed/extras-procedure.json +0 -0
  424. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/transformers/query/resources/transformed/function.json +0 -0
  425. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/transformers/query/resources/transformed/schema.json +0 -0
  426. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/transformers/query/resources/transformed/table.json +0 -0
  427. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/transformers/query/test_sql_transformer.py +0 -0
  428. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/transformers/query/test_sql_transformer_output_validation.py +0 -0
  429. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/workflows/metadata_extraction/test_sql_workflow.py +0 -0
  430. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/workflows/query_extraction/__init__.py +0 -0
  431. {atlan_application_sdk-1.0.4 → atlan_application_sdk-1.1.0}/tests/unit/workflows/query_extraction/test_sql.py +0 -0
@@ -0,0 +1,124 @@
1
+ ---
2
+ description: Conventional Commits Standards
3
+ globs:
4
+ alwaysApply: true
5
+ ---
6
+ # Conventional Commits
7
+
8
+ This project follows the [Conventional Commits](https://www.conventionalcommits.org/) specification for commit messages.
9
+
10
+ ## Commit Message Format
11
+
12
+ Each commit message must follow this structure:
13
+
14
+ ```
15
+ <type>[optional scope]: <description>
16
+
17
+ [optional body]
18
+
19
+ [optional footer(s)]
20
+ ```
21
+
22
+ ## Types
23
+
24
+ - **feat**: A new feature for the user
25
+ - **fix**: A bug fix for the user
26
+ - **docs**: Documentation only changes
27
+ - **style**: Changes that do not affect the meaning of the code (formatting, missing semi-colons, etc.)
28
+ - **refactor**: A code change that neither fixes a bug nor adds a feature
29
+ - **perf**: A code change that improves performance
30
+ - **test**: Adding missing tests or correcting existing tests
31
+ - **build**: Changes that affect the build system or external dependencies
32
+ - **ci**: Changes to CI configuration files and scripts
33
+ - **chore**: Other changes that don't modify src or test files
34
+ - **revert**: Reverts a previous commit
35
+
36
+ ## Scope
37
+
38
+ The scope is optional and should be a noun describing a section of the codebase surrounded by parentheses. Examples:
39
+
40
+ - `feat(clients)`: Add Redis client connection pooling
41
+ - `fix(workflow)`: Resolve metadata extraction timeout issue
42
+ - `docs(readme)`: Update installation instructions
43
+
44
+ ## Description
45
+
46
+ - Use the imperative, present tense: "add" not "added" nor "adds"
47
+ - Don't capitalize the first letter
48
+ - No period (.) at the end
49
+ - Keep it concise (50 characters or less is ideal)
50
+
51
+ ## Body
52
+
53
+ The body is optional and should provide additional context about the change:
54
+
55
+ - Use the imperative, present tense
56
+ - Explain the motivation for the change
57
+ - Contrast with previous behavior
58
+ - Wrap at 72 characters
59
+
60
+ ## Footer
61
+
62
+ The footer is optional and is used for:
63
+
64
+ - **Breaking Changes**: Must begin with `BREAKING CHANGE:` followed by a description
65
+ - **Issue References**: Reference GitHub issues, e.g., `Closes #123`, `Fixes #456`
66
+
67
+ ## Examples
68
+
69
+ ### Simple commit
70
+
71
+ ```
72
+ feat: add user authentication
73
+ ```
74
+
75
+ ### Commit with scope
76
+
77
+ ```
78
+ fix(sql): resolve connection pool exhaustion
79
+ ```
80
+
81
+ ### Commit with body
82
+
83
+ ```
84
+ feat(observability): add distributed tracing support
85
+
86
+ Implement OpenTelemetry integration for end-to-end request tracing.
87
+ This enables better debugging and performance analysis across services.
88
+ ```
89
+
90
+ ### Breaking change
91
+
92
+ ```
93
+ feat(clients)!: change authentication method
94
+
95
+ BREAKING CHANGE: The client authentication now requires OAuth2 tokens
96
+ instead of API keys. Update your configuration to use the new auth flow.
97
+
98
+ Closes #789
99
+ ```
100
+
101
+ ### Revert commit
102
+
103
+ ```
104
+ revert: feat(workflow): add automatic retry logic
105
+
106
+ This reverts commit abc123def456.
107
+ ```
108
+
109
+ ## Guidelines
110
+
111
+ - **Be atomic**: Each commit should represent a single logical change
112
+ - **Be descriptive**: The description should clearly explain what changed and why
113
+ - **Be consistent**: Follow the same patterns across all commits
114
+ - **Reference issues**: Link commits to relevant GitHub issues when applicable
115
+ - **Test before committing**: Ensure all tests pass before creating a commit
116
+ - **Review the diff**: Always review your changes before committing
117
+
118
+ ## Tools
119
+
120
+ Consider using tools to help enforce conventional commits:
121
+
122
+ - [commitizen](https://github.com/commitizen/cz-cli) - Interactive commit message wizard
123
+ - [commitlint](https://commitlint.js.org/) - Lint commit messages
124
+ - Git hooks to validate commit messages before accepting them
@@ -22,7 +22,4 @@
22
22
  ### Copyleft License Compliance
23
23
 
24
24
  - [ ] Have you used any code that is subject to a Copyleft license (e.g., GPL, AGPL, LGPL)?
25
- - [ ] If yes, have you modified the code in the context of this project? please share additional details.
26
-
27
-
28
- <!-- for any questions, reach out to us at connect@atlan.com -->
25
+ - [ ] If yes, have you modified the code in the context of this project? please share additional details.
@@ -0,0 +1,7 @@
1
+ ## v1.1.0 (December 12, 2025)
2
+
3
+ Full Changelog: https://github.com/atlanhq/application-sdk/compare/v1.0.4...v1.1.0
4
+
5
+ ### Features
6
+
7
+ - Add Atlan Attributes to Temporal Runs (#880) (by @saig214 in [8a85a24](https://github.com/atlanhq/application-sdk/commit/8a85a24))
@@ -1,5 +1,14 @@
1
1
  # Changelog
2
2
 
3
+ ## v1.1.0 (December 12, 2025)
4
+
5
+ Full Changelog: https://github.com/atlanhq/application-sdk/compare/v1.0.4...v1.1.0
6
+
7
+ ### Features
8
+
9
+ - Add Atlan Attributes to Temporal Runs (#880) (by @saig214 in [8a85a24](https://github.com/atlanhq/application-sdk/commit/8a85a24))
10
+
11
+
3
12
  ## v1.0.4 (December 11, 2025)
4
13
 
5
14
  Full Changelog: https://github.com/atlanhq/application-sdk/compare/v1.0.3...v1.0.4
@@ -55,7 +55,7 @@ a project may be further defined and clarified by project maintainers.
55
55
  ## Enforcement
56
56
 
57
57
  Instances of abusive, harassing, or otherwise unacceptable behavior may be
58
- reported by contacting the project team at connect@atlan.com. All
58
+ reported by contacting the project team at appframework@atlan.com. All
59
59
  complaints will be reviewed and investigated and will result in a response that
60
60
  is deemed necessary and appropriate to the circumstances. The project team is
61
61
  obligated to maintain confidentiality with regard to the reporter of an incident.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: atlan-application-sdk
3
- Version: 1.0.4
3
+ Version: 1.1.0
4
4
  Summary: Atlan Application SDK is a Python library for developing applications on the Atlan Platform
5
5
  Project-URL: Repository, https://github.com/atlanhq/application-sdk
6
6
  Project-URL: Documentation, https://github.com/atlanhq/application-sdk/README.md
@@ -100,12 +100,11 @@ poetry add atlan-application-sdk
100
100
 
101
101
  ## Partner Collaboration
102
102
 
103
- - For information on how to collaborate with Atlan on app development and integrations, please see our [Partner Collaboration Guide](https://github.com/atlanhq/application-sdk/blob/main/docs/docs/guides/partners.md).
103
+ - For information on how to collaborate with Atlan on app development and integrations, please see our [Partner Journey Guide](https://docs.atlan.com/product/capabilities/build-apps/partner-with-us/concepts/partner-journey).
104
104
 
105
105
  ## Need help?
106
106
  We’re here whenever you need us:
107
107
 
108
- - Email: **connect@atlan.com**
109
108
  - Issues: [GitHub Issues](https://github.com/atlanhq/application-sdk/issues)
110
109
 
111
110
 
@@ -38,12 +38,11 @@ poetry add atlan-application-sdk
38
38
 
39
39
  ## Partner Collaboration
40
40
 
41
- - For information on how to collaborate with Atlan on app development and integrations, please see our [Partner Collaboration Guide](https://github.com/atlanhq/application-sdk/blob/main/docs/docs/guides/partners.md).
41
+ - For information on how to collaborate with Atlan on app development and integrations, please see our [Partner Journey Guide](https://docs.atlan.com/product/capabilities/build-apps/partner-with-us/concepts/partner-journey).
42
42
 
43
43
  ## Need help?
44
44
  We’re here whenever you need us:
45
45
 
46
- - Email: **connect@atlan.com**
47
46
  - Issues: [GitHub Issues](https://github.com/atlanhq/application-sdk/issues)
48
47
 
49
48
 
@@ -206,6 +206,12 @@ class ActivitiesInterface(ABC, Generic[ActivitiesStateType]):
206
206
  )
207
207
  workflow_args["workflow_id"] = workflow_id
208
208
  workflow_args["workflow_run_id"] = get_workflow_run_id()
209
+
210
+ # Preserve atlan- prefixed keys from workflow_config for logging context
211
+ for key, value in workflow_config.items():
212
+ if key.startswith("atlan-") and value:
213
+ workflow_args[key] = str(value)
214
+
209
215
  return workflow_args
210
216
 
211
217
  except Exception as e:
@@ -33,6 +33,9 @@ from application_sdk.events.models import (
33
33
  WorkerTokenRefreshEventData,
34
34
  )
35
35
  from application_sdk.interceptors.cleanup import CleanupInterceptor, cleanup
36
+ from application_sdk.interceptors.correlation_context import (
37
+ CorrelationContextInterceptor,
38
+ )
36
39
  from application_sdk.interceptors.events import EventInterceptor, publish_event
37
40
  from application_sdk.interceptors.lock import RedisLockInterceptor
38
41
  from application_sdk.observability.logger_adaptor import get_logger
@@ -430,6 +433,7 @@ class TemporalWorkflowClient(WorkflowClient):
430
433
  max_concurrent_activities=max_concurrent_activities,
431
434
  activity_executor=activity_executor,
432
435
  interceptors=[
436
+ CorrelationContextInterceptor(),
433
437
  EventInterceptor(),
434
438
  CleanupInterceptor(),
435
439
  RedisLockInterceptor(activities_dict),
@@ -0,0 +1,143 @@
1
+ """Correlation context interceptor for Temporal workflows.
2
+
3
+ Propagates atlan-* correlation context fields from workflow arguments to activities
4
+ via Temporal headers, ensuring all activity logs include correlation identifiers
5
+ """
6
+
7
+ from dataclasses import replace
8
+ from typing import Any, Dict, Optional, Type
9
+
10
+ from temporalio import workflow
11
+ from temporalio.api.common.v1 import Payload
12
+ from temporalio.converter import default as default_converter
13
+ from temporalio.worker import (
14
+ ActivityInboundInterceptor,
15
+ ExecuteActivityInput,
16
+ ExecuteWorkflowInput,
17
+ Interceptor,
18
+ StartActivityInput,
19
+ WorkflowInboundInterceptor,
20
+ WorkflowInterceptorClassInput,
21
+ WorkflowOutboundInterceptor,
22
+ )
23
+
24
+ from application_sdk.observability.context import correlation_context
25
+ from application_sdk.observability.logger_adaptor import get_logger
26
+
27
+ logger = get_logger(__name__)
28
+
29
+ ATLAN_HEADER_PREFIX = "atlan-"
30
+
31
+
32
+ class CorrelationContextOutboundInterceptor(WorkflowOutboundInterceptor):
33
+ """Outbound interceptor that injects atlan-* context into activity headers."""
34
+
35
+ def __init__(
36
+ self,
37
+ next: WorkflowOutboundInterceptor,
38
+ inbound: "CorrelationContextWorkflowInboundInterceptor",
39
+ ):
40
+ """Initialize the outbound interceptor."""
41
+ super().__init__(next)
42
+ self.inbound = inbound
43
+
44
+ def start_activity(self, input: StartActivityInput) -> workflow.ActivityHandle[Any]:
45
+ """Inject atlan-* headers and trace_id into activity calls."""
46
+ try:
47
+ if self.inbound.correlation_data:
48
+ new_headers: Dict[str, Payload] = dict(input.headers)
49
+ payload_converter = default_converter().payload_converter
50
+
51
+ for key, value in self.inbound.correlation_data.items():
52
+ # Include atlan-* prefixed headers and trace_id
53
+ if (
54
+ key.startswith(ATLAN_HEADER_PREFIX) or key == "trace_id"
55
+ ) and value:
56
+ payload = payload_converter.to_payload(value)
57
+ new_headers[key] = payload
58
+
59
+ input = replace(input, headers=new_headers)
60
+ except Exception as e:
61
+ logger.warning(f"Failed to inject correlation context headers: {e}")
62
+
63
+ return self.next.start_activity(input)
64
+
65
+
66
+ class CorrelationContextWorkflowInboundInterceptor(WorkflowInboundInterceptor):
67
+ """Inbound workflow interceptor that extracts atlan-* context from workflow args."""
68
+
69
+ def __init__(self, next: WorkflowInboundInterceptor):
70
+ """Initialize the inbound interceptor."""
71
+ super().__init__(next)
72
+ self.correlation_data: Dict[str, str] = {}
73
+
74
+ def init(self, outbound: WorkflowOutboundInterceptor) -> None:
75
+ """Initialize with correlation context outbound interceptor."""
76
+ context_outbound = CorrelationContextOutboundInterceptor(outbound, self)
77
+ super().init(context_outbound)
78
+
79
+ async def execute_workflow(self, input: ExecuteWorkflowInput) -> Any:
80
+ """Execute workflow and extract atlan-* fields and trace_id from arguments."""
81
+ try:
82
+ if input.args and len(input.args) > 0:
83
+ workflow_config = input.args[0]
84
+ if isinstance(workflow_config, dict):
85
+ # Extract atlan-* prefixed fields
86
+ self.correlation_data = {
87
+ k: str(v)
88
+ for k, v in workflow_config.items()
89
+ if k.startswith(ATLAN_HEADER_PREFIX) and v
90
+ }
91
+ # Extract trace_id separately (not atlan- prefixed)
92
+ trace_id = workflow_config.get("trace_id", "")
93
+ if trace_id:
94
+ self.correlation_data["trace_id"] = str(trace_id)
95
+ if self.correlation_data:
96
+ correlation_context.set(self.correlation_data)
97
+ except Exception as e:
98
+ logger.warning(f"Failed to extract correlation context from args: {e}")
99
+
100
+ return await super().execute_workflow(input)
101
+
102
+
103
+ class CorrelationContextActivityInboundInterceptor(ActivityInboundInterceptor):
104
+ """Activity interceptor that reads atlan-* headers and trace_id, sets correlation_context."""
105
+
106
+ async def execute_activity(self, input: ExecuteActivityInput) -> Any:
107
+ """Execute activity after extracting atlan-* headers and trace_id."""
108
+ try:
109
+ atlan_fields: Dict[str, str] = {}
110
+ payload_converter = default_converter().payload_converter
111
+
112
+ for key, payload in input.headers.items():
113
+ # Extract atlan-* prefixed headers and trace_id
114
+ if key.startswith(ATLAN_HEADER_PREFIX) or key == "trace_id":
115
+ value = payload_converter.from_payload(payload, type_hint=str)
116
+ atlan_fields[key] = value
117
+
118
+ if atlan_fields:
119
+ correlation_context.set(atlan_fields)
120
+
121
+ except Exception as e:
122
+ logger.warning(f"Failed to extract correlation context from headers: {e}")
123
+
124
+ return await super().execute_activity(input)
125
+
126
+
127
+ class CorrelationContextInterceptor(Interceptor):
128
+ """Main interceptor for propagating atlan-* correlation context.
129
+
130
+ Ensures atlan-* fields are propagated from workflow arguments to all activities via Temporal headers.
131
+ """
132
+
133
+ def workflow_interceptor_class(
134
+ self, input: WorkflowInterceptorClassInput
135
+ ) -> Optional[Type[WorkflowInboundInterceptor]]:
136
+ """Get the workflow interceptor class."""
137
+ return CorrelationContextWorkflowInboundInterceptor
138
+
139
+ def intercept_activity(
140
+ self, next: ActivityInboundInterceptor
141
+ ) -> ActivityInboundInterceptor:
142
+ """Intercept activity executions to read correlation context."""
143
+ return CorrelationContextActivityInboundInterceptor(next)
@@ -66,8 +66,6 @@ class EventActivityInboundInterceptor(ActivityInboundInterceptor):
66
66
  Returns:
67
67
  Any: The result of the activity execution.
68
68
  """
69
- # Extract activity information for tracking
70
-
71
69
  start_event = Event(
72
70
  event_type=EventTypes.APPLICATION_EVENT.value,
73
71
  event_name=ApplicationEventNames.ACTIVITY_START.value,
@@ -0,0 +1,18 @@
1
+ """Shared context variables for observability.
2
+
3
+ This module contains ContextVar definitions that are shared across
4
+ multiple observability modules to avoid circular imports.
5
+ """
6
+
7
+ from contextvars import ContextVar
8
+ from typing import Any, Dict
9
+
10
+ # Context variable for request-scoped data (e.g., request_id from HTTP middleware)
11
+ request_context: ContextVar[Dict[str, Any] | None] = ContextVar(
12
+ "request_context", default=None
13
+ )
14
+
15
+ # Context variable for correlation context (atlan- prefixed headers for distributed tracing)
16
+ correlation_context: ContextVar[Dict[str, Any] | None] = ContextVar(
17
+ "correlation_context", default=None
18
+ )
@@ -2,7 +2,6 @@ import asyncio
2
2
  import logging
3
3
  import sys
4
4
  import threading
5
- from contextvars import ContextVar
6
5
  from time import time_ns
7
6
  from typing import Any, Dict, Optional, Tuple
8
7
 
@@ -34,6 +33,7 @@ from application_sdk.constants import (
34
33
  SERVICE_NAME,
35
34
  SERVICE_VERSION,
36
35
  )
36
+ from application_sdk.observability.context import correlation_context, request_context
37
37
  from application_sdk.observability.observability import AtlanObservability
38
38
  from application_sdk.observability.utils import (
39
39
  get_observability_dir,
@@ -42,7 +42,13 @@ from application_sdk.observability.utils import (
42
42
 
43
43
 
44
44
  class LogExtraModel(BaseModel):
45
- """Pydantic model for log extra fields."""
45
+ """Pydantic model for log extra fields.
46
+
47
+ This model allows arbitrary extra fields (prefixed with atlan-) to be included
48
+ for correlation context propagation to OTEL.
49
+ """
50
+
51
+ model_config = {"extra": "allow"}
46
52
 
47
53
  client_host: Optional[str] = None
48
54
  duration_ms: Optional[int] = None
@@ -67,52 +73,8 @@ class LogExtraModel(BaseModel):
67
73
  heartbeat_timeout: Optional[str] = None
68
74
  # Other fields
69
75
  log_type: Optional[str] = None
70
-
71
- class Config:
72
- """Pydantic model configuration for LogExtraModel.
73
-
74
- Provides custom parsing logic for converting dictionary values to appropriate types.
75
- Handles type conversion for various fields like integers, strings, and other data types.
76
- """
77
-
78
- @classmethod
79
- def parse_obj(cls, obj):
80
- if isinstance(obj, dict):
81
- # Define type mappings for each field
82
- type_mappings = {
83
- # Integer fields
84
- "attempt": int,
85
- "duration_ms": int,
86
- "status_code": int,
87
- # String fields
88
- "client_host": str,
89
- "method": str,
90
- "path": str,
91
- "request_id": str,
92
- "url": str,
93
- "workflow_id": str,
94
- "run_id": str,
95
- "workflow_type": str,
96
- "namespace": str,
97
- "task_queue": str,
98
- "activity_id": str,
99
- "activity_type": str,
100
- "schedule_to_close_timeout": str,
101
- "start_to_close_timeout": str,
102
- "schedule_to_start_timeout": str,
103
- "heartbeat_timeout": str,
104
- "log_type": str,
105
- }
106
-
107
- # Process each field with its type conversion
108
- for field, type_func in type_mappings.items():
109
- if field in obj and obj[field] is not None:
110
- try:
111
- obj[field] = type_func(obj[field])
112
- except (ValueError, TypeError):
113
- obj[field] = None
114
-
115
- return super().parse_obj(obj)
76
+ # Trace context
77
+ trace_id: Optional[str] = None
116
78
 
117
79
 
118
80
  class LogRecordModel(BaseModel):
@@ -142,6 +104,9 @@ class LogRecordModel(BaseModel):
142
104
  for k, v in message.record["extra"].items():
143
105
  if k != "logger_name" and hasattr(extra, k):
144
106
  setattr(extra, k, v)
107
+ # Include atlan- prefixed fields as extra attributes (correlation context)
108
+ elif k.startswith("atlan-") and v is not None:
109
+ setattr(extra, k, str(v))
145
110
 
146
111
  return cls(
147
112
  timestamp=message.record["time"].timestamp(),
@@ -160,8 +125,9 @@ class LogRecordModel(BaseModel):
160
125
  arbitrary_types_allowed = True
161
126
 
162
127
 
163
- # Create a context variable for request_id
164
- request_context: ContextVar[Dict[str, Any]] = ContextVar("request_context", default={})
128
+ # Re-exported from context.py for backward compatibility:
129
+ # - request_context: ContextVar for request-scoped data (e.g., request_id)
130
+ # - correlation_context: ContextVar for atlan- prefixed headers
165
131
 
166
132
 
167
133
  # Add a Loguru handler for the Python logging system
@@ -286,23 +252,41 @@ class AtlanLoggerAdapter(AtlanObservability[LogRecordModel]):
286
252
  "TRACING", no=SEVERITY_MAPPING["TRACING"], color="<magenta>", icon="🔍"
287
253
  )
288
254
 
289
- # Update format string to use the bound logger_name
290
- atlan_format_str_color = "<green>{time:YYYY-MM-DD HH:mm:ss}</green> <blue>[{level}]</blue> <cyan>{extra[logger_name]}</cyan> - <level>{message}</level>"
291
- atlan_format_str_plain = (
292
- "{time:YYYY-MM-DD HH:mm:ss} [{level}] {extra[logger_name]} - {message}"
293
- )
255
+ # Colorize the logs only if the log level is DEBUG
256
+ colorize = LOG_LEVEL == "DEBUG"
294
257
 
295
- colorize = False
296
- format_str = atlan_format_str_plain
258
+ def get_log_format(record: Any) -> str:
259
+ """Generate log format string with trace_id for correlation.
297
260
 
298
- # Colorize the logs only if the log level is DEBUG
299
- if LOG_LEVEL == "DEBUG":
300
- colorize = True
301
- format_str = atlan_format_str_color
261
+ Args:
262
+ record: Loguru record dictionary containing log information.
263
+
264
+ Returns:
265
+ Format string for the log message.
266
+ """
267
+ # Build trace_id display string (only trace_id is printed, atlan-* go to OTEL)
268
+ trace_id = record["extra"].get("trace_id", "")
269
+ record["extra"]["_trace_id_str"] = (
270
+ f" trace_id={trace_id}" if trace_id else ""
271
+ )
272
+
273
+ if colorize:
274
+ return (
275
+ "<green>{time:YYYY-MM-DD HH:mm:ss}</green> "
276
+ "<blue>[{level}]</blue>"
277
+ "<magenta>{extra[_trace_id_str]}</magenta> "
278
+ "<cyan>{extra[logger_name]}</cyan>"
279
+ " - <level>{message}</level>\n"
280
+ )
281
+ return (
282
+ "{time:YYYY-MM-DD HH:mm:ss} [{level}]"
283
+ "{extra[_trace_id_str]} {extra[logger_name]}"
284
+ " - {message}\n"
285
+ )
302
286
 
303
287
  self.logger.add(
304
288
  sys.stderr,
305
- format=format_str,
289
+ format=get_log_format,
306
290
  level=SEVERITY_MAPPING[LOG_LEVEL],
307
291
  colorize=colorize,
308
292
  )
@@ -538,16 +522,14 @@ class AtlanLoggerAdapter(AtlanObservability[LogRecordModel]):
538
522
  - Adds request context if available
539
523
  - Adds workflow context if in a workflow
540
524
  - Adds activity context if in an activity
525
+ - Adds correlation context if available
541
526
  """
542
527
  kwargs["logger_name"] = self.logger_name
543
528
 
544
529
  # Get request context
545
- try:
546
- ctx = request_context.get()
547
- if ctx and "request_id" in ctx:
548
- kwargs["request_id"] = ctx["request_id"]
549
- except Exception:
550
- pass
530
+ ctx = request_context.get()
531
+ if ctx and "request_id" in ctx:
532
+ kwargs["request_id"] = ctx["request_id"]
551
533
 
552
534
  workflow_context = get_workflow_context()
553
535
 
@@ -569,6 +551,17 @@ class AtlanLoggerAdapter(AtlanObservability[LogRecordModel]):
569
551
  except Exception:
570
552
  pass
571
553
 
554
+ # Add correlation context (atlan- prefixed keys and trace_id) to kwargs
555
+ corr_ctx = correlation_context.get()
556
+ if corr_ctx:
557
+ # Add trace_id if present (for log format display)
558
+ if "trace_id" in corr_ctx and corr_ctx["trace_id"]:
559
+ kwargs["trace_id"] = str(corr_ctx["trace_id"])
560
+ # Add atlan-* headers for OTEL
561
+ for key, value in corr_ctx.items():
562
+ if key.startswith("atlan-") and value:
563
+ kwargs[key] = str(value)
564
+
572
565
  return msg, kwargs
573
566
 
574
567
  def debug(self, msg: str, *args: Any, **kwargs: Any):
@@ -9,10 +9,17 @@ from application_sdk.constants import (
9
9
  OBSERVABILITY_DIR,
10
10
  TEMPORARY_PATH,
11
11
  )
12
+ from application_sdk.observability.context import correlation_context
12
13
 
13
14
 
14
15
  class WorkflowContext(BaseModel):
15
- """Workflow context."""
16
+ """Workflow context.
17
+
18
+ This model supports dynamic correlation context fields (atlan- prefixed)
19
+ through Pydantic's extra="allow" configuration.
20
+ """
21
+
22
+ model_config = {"extra": "allow"}
16
23
 
17
24
  in_workflow: str = Field(default="false")
18
25
  in_activity: str = Field(default="false")
@@ -75,4 +82,12 @@ def get_workflow_context() -> WorkflowContext:
75
82
  except Exception:
76
83
  pass
77
84
 
85
+ # Get correlation context from context variable (atlan- prefixed headers)
86
+ corr_ctx = correlation_context.get()
87
+ if corr_ctx:
88
+ # Add all correlation context fields as extra attributes
89
+ for key, value in corr_ctx.items():
90
+ if key.startswith("atlan-") and value:
91
+ setattr(context, key, str(value))
92
+
78
93
  return context
@@ -6,7 +6,8 @@ from starlette.requests import Request
6
6
  from starlette.responses import Response
7
7
  from starlette.types import ASGIApp
8
8
 
9
- from application_sdk.observability.logger_adaptor import get_logger, request_context
9
+ from application_sdk.observability.context import request_context
10
+ from application_sdk.observability.logger_adaptor import get_logger
10
11
 
11
12
  logger = get_logger(__name__)
12
13
 
@@ -2,4 +2,4 @@
2
2
  Version information for the application_sdk package.
3
3
  """
4
4
 
5
- __version__ = "1.0.4"
5
+ __version__ = "1.1.0"
@@ -4,6 +4,4 @@ The `frontend` directory in the app is designated to be used to add frontends fo
4
4
 
5
5
  As of today, you can build this frontend using any frontend framework.
6
6
 
7
- More information about Atlantis will be available soon.
8
-
9
- If you have any questions please reach out us at connect@atlan.com.
7
+ More information about Atlantis will be available soon.