atlan-application-sdk 2.3.1__tar.gz → 2.3.2__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 (461) hide show
  1. atlan_application_sdk-2.3.2/.cursor/rules/build-security.mdc +35 -0
  2. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.cursor/rules/commits.mdc +1 -0
  3. atlan_application_sdk-2.3.2/.github/CODEOWNERS +1 -0
  4. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.github/actions/secure-build-push-apps/action.yaml +2 -2
  5. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.github/actions/trivy/action.yaml +8 -7
  6. atlan_application_sdk-2.3.2/.github/actions/trivy-container/action.yaml +107 -0
  7. atlan_application_sdk-2.3.2/.github/dependabot.yaml +19 -0
  8. atlan_application_sdk-2.3.2/.github/release_notes.md +9 -0
  9. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.github/workflows/build-image.yaml +1 -1
  10. atlan_application_sdk-2.3.2/.github/workflows/harbor-release.yaml +74 -0
  11. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.github/workflows/pull_request.yaml +30 -0
  12. atlan_application_sdk-2.3.2/.github/workflows/scheduled-vulnerability-scan.yaml +122 -0
  13. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.github/workflows/trivy-container.yaml +13 -0
  14. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.pre-commit-config.yaml +8 -0
  15. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/AGENTS.md +13 -0
  16. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/CHANGELOG.md +11 -0
  17. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/CLAUDE.md +11 -0
  18. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/Dockerfile +18 -10
  19. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/PKG-INFO +16 -1
  20. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/README.md +15 -0
  21. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/activities/query_extraction/sql.py +6 -5
  22. atlan_application_sdk-2.3.2/application_sdk/common/file_ops.py +122 -0
  23. atlan_application_sdk-2.3.2/application_sdk/common/path.py +38 -0
  24. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/constants.py +23 -0
  25. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/interceptors/events.py +12 -3
  26. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/io/json.py +19 -6
  27. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/io/parquet.py +12 -10
  28. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/observability/logger_adaptor.py +2 -1
  29. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/observability/metrics_adaptor.py +30 -104
  30. atlan_application_sdk-2.3.2/application_sdk/observability/models.py +109 -0
  31. atlan_application_sdk-2.3.2/application_sdk/observability/segment_client.py +420 -0
  32. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/services/eventstore.py +116 -1
  33. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/services/objectstore.py +10 -10
  34. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/services/statestore.py +5 -4
  35. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/version.py +1 -1
  36. atlan_application_sdk-2.3.2/docs/agents/coding-standards.md +25 -0
  37. atlan_application_sdk-2.3.2/docs/agents/commits-prs.md +30 -0
  38. atlan_application_sdk-2.3.2/docs/agents/dev-commands.md +46 -0
  39. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/pyproject.toml +5 -1
  40. atlan_application_sdk-2.3.2/requirements.txt +646 -0
  41. atlan_application_sdk-2.3.2/tests/unit/common/test_file_ops.py +173 -0
  42. atlan_application_sdk-2.3.2/tests/unit/common/test_path.py +42 -0
  43. atlan_application_sdk-2.3.2/tests/unit/io/test_writer_data_integrity.py +280 -0
  44. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/observability/test_metrics_adaptor.py +148 -2
  45. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/uv.lock +22 -16
  46. atlan_application_sdk-2.3.1/.github/CODEOWNERS +0 -1
  47. atlan_application_sdk-2.3.1/.github/actions/trivy-container/action.yaml +0 -50
  48. atlan_application_sdk-2.3.1/.github/dependabot.yaml +0 -14
  49. atlan_application_sdk-2.3.1/.github/release_notes.md +0 -7
  50. atlan_application_sdk-2.3.1/docs/agents/coding-standards.md +0 -5
  51. atlan_application_sdk-2.3.1/docs/agents/commits-prs.md +0 -4
  52. atlan_application_sdk-2.3.1/docs/agents/dev-commands.md +0 -5
  53. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.cursor/BUGBOT.md +0 -0
  54. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.cursor/rules/deepwiki.mdc +0 -0
  55. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.cursor/rules/documentation.mdc +0 -0
  56. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.cursor/rules/exception-handling.mdc +0 -0
  57. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.cursor/rules/guidelines.mdc +0 -0
  58. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.cursor/rules/logging.mdc +0 -0
  59. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.cursor/rules/performance.mdc +0 -0
  60. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.cursor/rules/setup.mdc +0 -0
  61. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.cursor/rules/standards.mdc +0 -0
  62. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.cursor/rules/testing.mdc +0 -0
  63. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.dockerignore +0 -0
  64. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.env.example +0 -0
  65. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.github/ISSUE_TEMPLATE/bug_report.yaml +0 -0
  66. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.github/ISSUE_TEMPLATE/config.yaml +0 -0
  67. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.github/ISSUE_TEMPLATE/feature_request.yaml +0 -0
  68. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.github/actions/docgen/action.yaml +0 -0
  69. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.github/actions/doclint/action.yaml +0 -0
  70. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.github/actions/docstring-coverage/action.yaml +0 -0
  71. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.github/actions/e2e-apps/action.yaml +0 -0
  72. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.github/actions/e2e-examples/action.yaml +0 -0
  73. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.github/actions/setup-deps/action.yaml +0 -0
  74. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.github/actions/sync-branches/action.yaml +0 -0
  75. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.github/actions/unit-tests/action.yaml +0 -0
  76. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.github/pull_request_template.md +0 -0
  77. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.github/scripts/extract_release_notes.py +0 -0
  78. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.github/scripts/release.py +0 -0
  79. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.github/scripts/trivy-to-markdown.py +0 -0
  80. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.github/scripts/update_changelog.py +0 -0
  81. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.github/styles/Microsoft/AMPM.yml +0 -0
  82. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.github/styles/Microsoft/Accessibility.yml +0 -0
  83. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.github/styles/Microsoft/Acronyms.yml +0 -0
  84. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.github/styles/Microsoft/Adverbs.yml +0 -0
  85. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.github/styles/Microsoft/Auto.yml +0 -0
  86. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.github/styles/Microsoft/Avoid.yml +0 -0
  87. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.github/styles/Microsoft/Contractions.yml +0 -0
  88. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.github/styles/Microsoft/Dashes.yml +0 -0
  89. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.github/styles/Microsoft/DateFormat.yml +0 -0
  90. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.github/styles/Microsoft/DateNumbers.yml +0 -0
  91. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.github/styles/Microsoft/DateOrder.yml +0 -0
  92. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.github/styles/Microsoft/Ellipses.yml +0 -0
  93. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.github/styles/Microsoft/FirstPerson.yml +0 -0
  94. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.github/styles/Microsoft/Foreign.yml +0 -0
  95. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.github/styles/Microsoft/Gender.yml +0 -0
  96. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.github/styles/Microsoft/GenderBias.yml +0 -0
  97. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.github/styles/Microsoft/GeneralURL.yml +0 -0
  98. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.github/styles/Microsoft/HeadingAcronyms.yml +0 -0
  99. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.github/styles/Microsoft/HeadingColons.yml +0 -0
  100. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.github/styles/Microsoft/HeadingPunctuation.yml +0 -0
  101. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.github/styles/Microsoft/Headings.yml +0 -0
  102. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.github/styles/Microsoft/Hyphens.yml +0 -0
  103. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.github/styles/Microsoft/Negative.yml +0 -0
  104. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.github/styles/Microsoft/Ordinal.yml +0 -0
  105. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.github/styles/Microsoft/OxfordComma.yml +0 -0
  106. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.github/styles/Microsoft/Passive.yml +0 -0
  107. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.github/styles/Microsoft/Percentages.yml +0 -0
  108. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.github/styles/Microsoft/Plurals.yml +0 -0
  109. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.github/styles/Microsoft/Quotes.yml +0 -0
  110. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.github/styles/Microsoft/RangeTime.yml +0 -0
  111. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.github/styles/Microsoft/Semicolon.yml +0 -0
  112. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.github/styles/Microsoft/SentenceLength.yml +0 -0
  113. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.github/styles/Microsoft/Spacing.yml +0 -0
  114. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.github/styles/Microsoft/Suspended.yml +0 -0
  115. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.github/styles/Microsoft/Terms.yml +0 -0
  116. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.github/styles/Microsoft/URLFormat.yml +0 -0
  117. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.github/styles/Microsoft/Units.yml +0 -0
  118. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.github/styles/Microsoft/Vocab.yml +0 -0
  119. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.github/styles/Microsoft/We.yml +0 -0
  120. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.github/styles/Microsoft/Wordiness.yml +0 -0
  121. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.github/styles/Microsoft/meta.json +0 -0
  122. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.github/styles/config/vocabularies/deviations/accept.txt +0 -0
  123. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.github/styles/config/vocabularies/deviations/reject.txt +0 -0
  124. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.github/workflow-templates/checks.properties.json +0 -0
  125. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.github/workflow-templates/checks.yaml +0 -0
  126. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.github/workflow-templates/codeql.properties.json +0 -0
  127. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.github/workflow-templates/codeql.yaml +0 -0
  128. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.github/workflow-templates/dependency-review.properties.json +0 -0
  129. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.github/workflow-templates/dependency-review.yml +0 -0
  130. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.github/workflow-templates/stale.properties.json +0 -0
  131. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.github/workflow-templates/stale.yml +0 -0
  132. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.github/workflow-templates/trivy-container.properties.json +0 -0
  133. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.github/workflow-templates/trivy-container.yaml +0 -0
  134. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.github/workflow-templates/trivy.properties.json +0 -0
  135. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.github/workflow-templates/trivy.yaml +0 -0
  136. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.github/workflows/codeql.yaml +0 -0
  137. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.github/workflows/push.yaml +0 -0
  138. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.github/workflows/release.yaml +0 -0
  139. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.github/workflows/scale-tests.yaml +0 -0
  140. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.github/workflows/schedule.yaml +0 -0
  141. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.github/workflows/tag-and-publish.yaml +0 -0
  142. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.github/workflows/verify-snyk-status.yml +0 -0
  143. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.gitignore +0 -0
  144. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/.vscode/launch.json +0 -0
  145. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/CODE_OF_CONDUCT.md +0 -0
  146. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/CONTRIBUTING.md +0 -0
  147. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/LICENSE +0 -0
  148. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/NOTICE +0 -0
  149. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/SECURITY.md +0 -0
  150. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/__init__.py +0 -0
  151. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/activities/.cursor/BUGBOT.md +0 -0
  152. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/activities/__init__.py +0 -0
  153. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/activities/common/__init__.py +0 -0
  154. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/activities/common/models.py +0 -0
  155. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/activities/common/sql_utils.py +0 -0
  156. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/activities/common/utils.py +0 -0
  157. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/activities/lock_management.py +0 -0
  158. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/activities/metadata_extraction/__init__.py +0 -0
  159. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/activities/metadata_extraction/base.py +0 -0
  160. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/activities/metadata_extraction/rest.py +0 -0
  161. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/activities/metadata_extraction/sql.py +0 -0
  162. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/activities/query_extraction/__init__.py +0 -0
  163. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/application/__init__.py +0 -0
  164. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/application/metadata_extraction/sql.py +0 -0
  165. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/clients/.cursor/BUGBOT.md +0 -0
  166. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/clients/__init__.py +0 -0
  167. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/clients/atlan.py +0 -0
  168. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/clients/atlan_auth.py +0 -0
  169. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/clients/azure/__init__.py +0 -0
  170. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/clients/azure/auth.py +0 -0
  171. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/clients/azure/client.py +0 -0
  172. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/clients/base.py +0 -0
  173. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/clients/models.py +0 -0
  174. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/clients/redis.py +0 -0
  175. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/clients/sql.py +0 -0
  176. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/clients/temporal.py +0 -0
  177. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/clients/utils.py +0 -0
  178. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/clients/workflow.py +0 -0
  179. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/common/.cursor/BUGBOT.md +0 -0
  180. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/common/__init__.py +0 -0
  181. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/common/aws_utils.py +0 -0
  182. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/common/error_codes.py +0 -0
  183. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/common/file_converter.py +0 -0
  184. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/common/types.py +0 -0
  185. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/common/utils.py +0 -0
  186. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/decorators/.cursor/BUGBOT.md +0 -0
  187. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/decorators/__init__.py +0 -0
  188. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/decorators/locks.py +0 -0
  189. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/decorators/mcp_tool.py +0 -0
  190. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/docgen/__init__.py +0 -0
  191. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/docgen/exporters/__init__.py +0 -0
  192. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/docgen/exporters/mkdocs.py +0 -0
  193. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/docgen/models/__init__.py +0 -0
  194. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/docgen/models/export/__init__.py +0 -0
  195. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/docgen/models/export/page.py +0 -0
  196. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/docgen/models/manifest/__init__.py +0 -0
  197. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/docgen/models/manifest/customer.py +0 -0
  198. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/docgen/models/manifest/internal.py +0 -0
  199. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/docgen/models/manifest/metadata.py +0 -0
  200. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/docgen/models/manifest/page.py +0 -0
  201. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/docgen/models/manifest/section.py +0 -0
  202. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/docgen/parsers/__init__.py +0 -0
  203. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/docgen/parsers/directory.py +0 -0
  204. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/docgen/parsers/manifest.py +0 -0
  205. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/handlers/__init__.py +0 -0
  206. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/handlers/base.py +0 -0
  207. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/handlers/sql.py +0 -0
  208. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/interceptors/.cursor/BUGBOT.md +0 -0
  209. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/interceptors/__init__.py +0 -0
  210. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/interceptors/cleanup.py +0 -0
  211. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/interceptors/correlation_context.py +0 -0
  212. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/interceptors/lock.py +0 -0
  213. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/interceptors/models.py +0 -0
  214. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/io/__init__.py +0 -0
  215. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/io/utils.py +0 -0
  216. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/observability/__init__.py +0 -0
  217. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/observability/context.py +0 -0
  218. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/observability/decorators/observability_decorator.py +0 -0
  219. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/observability/observability.py +0 -0
  220. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/observability/traces_adaptor.py +0 -0
  221. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/observability/utils.py +0 -0
  222. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/server/.cursor/BUGBOT.md +0 -0
  223. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/server/__init__.py +0 -0
  224. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/server/fastapi/__init__.py +0 -0
  225. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/server/fastapi/middleware/logmiddleware.py +0 -0
  226. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/server/fastapi/middleware/metrics.py +0 -0
  227. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/server/fastapi/models.py +0 -0
  228. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/server/fastapi/routers/__init__.py +0 -0
  229. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/server/fastapi/routers/server.py +0 -0
  230. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/server/fastapi/utils.py +0 -0
  231. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/server/mcp/__init__.py +0 -0
  232. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/server/mcp/models.py +0 -0
  233. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/server/mcp/server.py +0 -0
  234. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/services/__init__.py +0 -0
  235. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/services/_utils.py +0 -0
  236. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/services/atlan_storage.py +0 -0
  237. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/services/secretstore.py +0 -0
  238. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/test_utils/__init__.py +0 -0
  239. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/test_utils/e2e/__init__.py +0 -0
  240. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/test_utils/e2e/base.py +0 -0
  241. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/test_utils/e2e/client.py +0 -0
  242. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/test_utils/e2e/conftest.py +0 -0
  243. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/test_utils/e2e/utils.py +0 -0
  244. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/test_utils/hypothesis/__init__.py +0 -0
  245. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/test_utils/hypothesis/strategies/__init__.py +0 -0
  246. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/test_utils/hypothesis/strategies/clients/__init__.py +0 -0
  247. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/test_utils/hypothesis/strategies/clients/sql.py +0 -0
  248. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/test_utils/hypothesis/strategies/common/__init__.py +0 -0
  249. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/test_utils/hypothesis/strategies/common/logger.py +0 -0
  250. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/test_utils/hypothesis/strategies/handlers/__init__.py +0 -0
  251. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/test_utils/hypothesis/strategies/handlers/sql/__init__.py +0 -0
  252. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/test_utils/hypothesis/strategies/handlers/sql/sql_metadata.py +0 -0
  253. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/test_utils/hypothesis/strategies/handlers/sql/sql_preflight.py +0 -0
  254. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/test_utils/hypothesis/strategies/inputs/__init__.py +0 -0
  255. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/test_utils/hypothesis/strategies/inputs/json_input.py +0 -0
  256. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/test_utils/hypothesis/strategies/inputs/parquet_input.py +0 -0
  257. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/test_utils/hypothesis/strategies/outputs/__init__.py +0 -0
  258. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/test_utils/hypothesis/strategies/outputs/json_output.py +0 -0
  259. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/test_utils/hypothesis/strategies/outputs/statestore.py +0 -0
  260. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/test_utils/hypothesis/strategies/server/__init__.py +0 -0
  261. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/test_utils/hypothesis/strategies/server/fastapi/__init__.py +0 -0
  262. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/test_utils/hypothesis/strategies/sql_client.py +0 -0
  263. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/test_utils/hypothesis/strategies/temporal.py +0 -0
  264. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/test_utils/scale_data_generator/README.md +0 -0
  265. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/test_utils/scale_data_generator/__init__.py +0 -0
  266. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/test_utils/scale_data_generator/config_loader.py +0 -0
  267. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/test_utils/scale_data_generator/data_generator.py +0 -0
  268. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/test_utils/scale_data_generator/driver.py +0 -0
  269. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/test_utils/scale_data_generator/examples/config.yaml +0 -0
  270. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/test_utils/scale_data_generator/output_handler/__init__.py +0 -0
  271. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/test_utils/scale_data_generator/output_handler/base.py +0 -0
  272. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/test_utils/scale_data_generator/output_handler/csv_handler.py +0 -0
  273. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/test_utils/scale_data_generator/output_handler/json_handler.py +0 -0
  274. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/test_utils/scale_data_generator/output_handler/parquet_handler.py +0 -0
  275. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/test_utils/workflow_monitoring.py +0 -0
  276. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/transformers/__init__.py +0 -0
  277. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/transformers/atlas/__init__.py +0 -0
  278. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/transformers/atlas/sql.py +0 -0
  279. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/transformers/common/__init__.py +0 -0
  280. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/transformers/common/utils.py +0 -0
  281. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/transformers/query/__init__.py +0 -0
  282. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/transformers/query/templates/column.yaml +0 -0
  283. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/transformers/query/templates/database.yaml +0 -0
  284. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/transformers/query/templates/extras-procedure.yaml +0 -0
  285. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/transformers/query/templates/function.yaml +0 -0
  286. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/transformers/query/templates/schema.yaml +0 -0
  287. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/transformers/query/templates/table.yaml +0 -0
  288. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/transformers/query/templates/tag_attachment.yaml +0 -0
  289. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/worker.py +0 -0
  290. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/workflows/.cursor/BUGBOT.md +0 -0
  291. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/workflows/__init__.py +0 -0
  292. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/workflows/metadata_extraction/__init__.py +0 -0
  293. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/workflows/metadata_extraction/sql.py +0 -0
  294. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/workflows/query_extraction/__init__.py +0 -0
  295. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/application_sdk/workflows/query_extraction/sql.py +0 -0
  296. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/components/README.md +0 -0
  297. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/components/atlan-storage.yaml +0 -0
  298. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/components/aws-secrets.yaml +0 -0
  299. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/components/configuration.yaml +0 -0
  300. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/components/deployment-secrets.yaml +0 -0
  301. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/components/eventstore.yaml +0 -0
  302. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/components/objectstore.yaml +0 -0
  303. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/components/pubsub.yaml +0 -0
  304. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/components/secretstore.yaml +0 -0
  305. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/components/statestore.yaml +0 -0
  306. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/docs/agents/deepwiki.md +0 -0
  307. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/docs/agents/docs-updates.md +0 -0
  308. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/docs/agents/project-structure.md +0 -0
  309. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/docs/agents/review.md +0 -0
  310. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/docs/agents/testing.md +0 -0
  311. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/docs/concepts/API.md +0 -0
  312. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/docs/concepts/activities.md +0 -0
  313. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/docs/concepts/application.md +0 -0
  314. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/docs/concepts/application_sql.md +0 -0
  315. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/docs/concepts/atlanupload.md +0 -0
  316. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/docs/concepts/clients.md +0 -0
  317. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/docs/concepts/common.md +0 -0
  318. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/docs/concepts/handlers.md +0 -0
  319. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/docs/concepts/inputs.md +0 -0
  320. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/docs/concepts/mcp.md +0 -0
  321. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/docs/concepts/output_paths.md +0 -0
  322. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/docs/concepts/outputs.md +0 -0
  323. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/docs/concepts/server.md +0 -0
  324. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/docs/concepts/services.md +0 -0
  325. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/docs/concepts/temporal_auth.md +0 -0
  326. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/docs/concepts/worker.md +0 -0
  327. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/docs/concepts/workflows.md +0 -0
  328. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/docs/configuration.md +0 -0
  329. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/docs/guides/architecture.md +0 -0
  330. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/docs/guides/atlantis.md +0 -0
  331. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/docs/guides/best-practices.md +0 -0
  332. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/docs/guides/getting-started.md +0 -0
  333. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/docs/guides/index.md +0 -0
  334. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/docs/guides/secretstores.md +0 -0
  335. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/docs/guides/sql-application-guide.md +0 -0
  336. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/docs/guides/test-framework.md +0 -0
  337. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/docs/index.md +0 -0
  338. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/docs/setup/LINUX.md +0 -0
  339. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/docs/setup/MAC.md +0 -0
  340. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/docs/setup/WINDOWS.md +0 -0
  341. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/docs/setup/troubleshooting.md +0 -0
  342. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/docs/static/assets/logo.svg +0 -0
  343. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/docs/static/images/phoenix-sdk-featureset.png +0 -0
  344. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/docs/static/javascripts/mathjax.js +0 -0
  345. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/docs/static/stylesheets/extra.css +0 -0
  346. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/entrypoint.sh +0 -0
  347. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/examples/README.md +0 -0
  348. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/examples/application_custom_fastapi.py +0 -0
  349. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/examples/application_fastapi.py +0 -0
  350. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/examples/application_hello_world.py +0 -0
  351. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/examples/application_sql.py +0 -0
  352. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/examples/application_sql_miner.py +0 -0
  353. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/examples/application_sql_with_custom_pyatlan_transformer.py +0 -0
  354. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/examples/application_sql_with_custom_transformer.py +0 -0
  355. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/examples/run_examples.py +0 -0
  356. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/examples/sql_query_templates/database.yaml +0 -0
  357. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/mkdocs.yml +0 -0
  358. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/.cursor/BUGBOT.md +0 -0
  359. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/__init__.py +0 -0
  360. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/conftest.py +0 -0
  361. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/__init__.py +0 -0
  362. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/activities/__init__.py +0 -0
  363. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/activities/common/__init__.py +0 -0
  364. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/activities/common/test_sql_utils.py +0 -0
  365. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/activities/common/test_utils.py +0 -0
  366. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/activities/metadata_extraction/__init__.py +0 -0
  367. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/activities/metadata_extraction/test_sql.py +0 -0
  368. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/activities/query_extraction/__init__.py +0 -0
  369. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/activities/test_activities.py +0 -0
  370. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/activities/test_lock_management.py +0 -0
  371. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/application/__init__.py +0 -0
  372. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/application/metadata_extraction/test_sql.py +0 -0
  373. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/application/test_application.py +0 -0
  374. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/clients/__init__.py +0 -0
  375. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/clients/test_async_sql_client.py +0 -0
  376. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/clients/test_atlan_auth.py +0 -0
  377. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/clients/test_atlan_client.py +0 -0
  378. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/clients/test_atlanauth.py +0 -0
  379. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/clients/test_azure_auth.py +0 -0
  380. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/clients/test_azure_client.py +0 -0
  381. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/clients/test_base_client.py +0 -0
  382. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/clients/test_redis_client.py +0 -0
  383. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/clients/test_sql_client.py +0 -0
  384. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/clients/test_temporal_client.py +0 -0
  385. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/common/test_aws_utils.py +0 -0
  386. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/common/test_credential_utils.py +0 -0
  387. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/common/test_file_converter.py +0 -0
  388. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/common/test_utils.py +0 -0
  389. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/common/test_utils_file_discovery.py +0 -0
  390. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/decorators/__init__.py +0 -0
  391. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/decorators/test_mcp_tool.py +0 -0
  392. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/docgen/parsers/test_directory_parser.py +0 -0
  393. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/docgen/parsers/test_manifest_parser.py +0 -0
  394. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/handlers/__init__.py +0 -0
  395. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/handlers/sql/test_auth.py +0 -0
  396. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/handlers/sql/test_check_schemas_and_databases.py +0 -0
  397. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/handlers/sql/test_extract_allowed_schemas.py +0 -0
  398. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/handlers/sql/test_metadata.py +0 -0
  399. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/handlers/sql/test_preflight_check.py +0 -0
  400. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/handlers/sql/test_prepare_metadata.py +0 -0
  401. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/handlers/sql/test_tables_check.py +0 -0
  402. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/handlers/sql/test_validate_filters.py +0 -0
  403. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/handlers/test_base_handler.py +0 -0
  404. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/interceptors/__init__.py +0 -0
  405. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/interceptors/test_correlation_context.py +0 -0
  406. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/io/readers/test_json_reader.py +0 -0
  407. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/io/readers/test_parquet_reader.py +0 -0
  408. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/io/test_base_io.py +0 -0
  409. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/io/writers/test_json_writer.py +0 -0
  410. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/io/writers/test_parquet_writer.py +0 -0
  411. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/observability/__init__.py +0 -0
  412. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/observability/test_logger_adaptor.py +0 -0
  413. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/observability/test_traces_adaptor.py +0 -0
  414. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/server/__init__.py +0 -0
  415. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/server/fastapi/routers/__init__.py +0 -0
  416. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/server/fastapi/routers/server.py +0 -0
  417. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/server/fastapi/test_fastapi.py +0 -0
  418. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/server/mcp/__init__.py +0 -0
  419. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/server/mcp/test_mcp_server.py +0 -0
  420. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/services/test_atlan_storage.py +0 -0
  421. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/services/test_eventstore.py +0 -0
  422. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/services/test_objectstore.py +0 -0
  423. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/services/test_statestore.py +0 -0
  424. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/test_worker.py +0 -0
  425. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/transformers/__init__.py +0 -0
  426. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/transformers/atlas/__init__.py +0 -0
  427. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/transformers/atlas/resources/raw_columns.json +0 -0
  428. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/transformers/atlas/resources/raw_databases.json +0 -0
  429. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/transformers/atlas/resources/raw_functions.json +0 -0
  430. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/transformers/atlas/resources/raw_procedures.json +0 -0
  431. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/transformers/atlas/resources/raw_schemas.json +0 -0
  432. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/transformers/atlas/resources/raw_tables.json +0 -0
  433. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/transformers/atlas/resources/transformed_columns.json +0 -0
  434. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/transformers/atlas/resources/transformed_databases.json +0 -0
  435. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/transformers/atlas/resources/transformed_functions.json +0 -0
  436. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/transformers/atlas/resources/transformed_procedures.json +0 -0
  437. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/transformers/atlas/resources/transformed_schemas.json +0 -0
  438. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/transformers/atlas/resources/transformed_tables.json +0 -0
  439. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/transformers/atlas/test_column.py +0 -0
  440. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/transformers/atlas/test_database.py +0 -0
  441. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/transformers/atlas/test_function.py +0 -0
  442. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/transformers/atlas/test_procedure.py +0 -0
  443. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/transformers/atlas/test_schema.py +0 -0
  444. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/transformers/atlas/test_table.py +0 -0
  445. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/transformers/query/resources/raw/column.json +0 -0
  446. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/transformers/query/resources/raw/database.json +0 -0
  447. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/transformers/query/resources/raw/extras-procedure.json +0 -0
  448. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/transformers/query/resources/raw/function.json +0 -0
  449. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/transformers/query/resources/raw/schema.json +0 -0
  450. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/transformers/query/resources/raw/table.json +0 -0
  451. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/transformers/query/resources/transformed/column.json +0 -0
  452. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/transformers/query/resources/transformed/database.json +0 -0
  453. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/transformers/query/resources/transformed/extras-procedure.json +0 -0
  454. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/transformers/query/resources/transformed/function.json +0 -0
  455. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/transformers/query/resources/transformed/schema.json +0 -0
  456. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/transformers/query/resources/transformed/table.json +0 -0
  457. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/transformers/query/test_sql_transformer.py +0 -0
  458. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/transformers/query/test_sql_transformer_output_validation.py +0 -0
  459. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/workflows/metadata_extraction/test_sql_workflow.py +0 -0
  460. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/workflows/query_extraction/__init__.py +0 -0
  461. {atlan_application_sdk-2.3.1 → atlan_application_sdk-2.3.2}/tests/unit/workflows/query_extraction/test_sql.py +0 -0
@@ -0,0 +1,35 @@
1
+ # Build & Security Scanning
2
+
3
+ This rule is triggered when working with Docker images, security scanning (Trivy/Grype/Snyk), Dapr configuration, or CI/CD pipelines.
4
+
5
+ > **IMPORTANT**: Always run security scans after Dockerfile changes or dependency updates. CI will block HIGH/CRITICAL vulnerabilities.
6
+
7
+ ## Quick Reference
8
+
9
+ - **Image base**: `cgr.dev/chainguard-private/python` → golden images → SDK → apps
10
+ - **Dapr runtime**: Installed via Chainguard APK (0 CVEs), configured in Dockerfile
11
+ - **Registries**: Harbor (`registry.atlan.com`) for production, GHCR for CI
12
+
13
+ ## Build & Scan Commands
14
+
15
+ ```bash
16
+ # Build image locally
17
+ docker build -t application-sdk:local .
18
+
19
+ # Scan image
20
+ trivy image application-sdk:local
21
+ grype application-sdk:local
22
+
23
+ # Scan dependencies
24
+ trivy fs uv.lock
25
+ snyk test --file=requirements.txt # requires: uv export --frozen --no-hashes --no-header -o requirements.txt
26
+ ```
27
+
28
+ ## For Full Details
29
+
30
+ Read `docs/build-scan-overview.md` for:
31
+ - Complete image hierarchy and layer details
32
+ - Publishing triggers and tag conventions
33
+ - Dapr Dockerfile configuration
34
+ - CI/CD workflow matrix
35
+ - Snyk/uv.lock workaround
@@ -114,6 +114,7 @@ This reverts commit abc123def456.
114
114
  - **Reference issues**: Link commits to relevant GitHub issues when applicable
115
115
  - **Test before committing**: Ensure all tests pass before creating a commit
116
116
  - **Review the diff**: Always review your changes before committing
117
+ - **Scan before pushing**: For Dockerfile or dependency changes, run security scans before pushing (see [build-security.mdc](mdc:.cursor/rules/build-security.mdc))
117
118
 
118
119
  ## Tools
119
120
 
@@ -0,0 +1 @@
1
+ * @stefan-atlan @cmgrote @OnkarVO7
@@ -310,7 +310,7 @@ runs:
310
310
 
311
311
  - name: Run Trivy Scan
312
312
  id: trivy_scan
313
- uses: aquasecurity/trivy-action@0.24.0
313
+ uses: aquasecurity/trivy-action@0.33.1
314
314
  with:
315
315
  # UPDATED: Use the single, primary tag from the step above
316
316
  image-ref: ${{ steps.extract_tag.outputs.primary_tag }}
@@ -549,4 +549,4 @@ runs:
549
549
  else
550
550
  echo "❌ Failed to start import job. HTTP Code: $HTTP_CODE"
551
551
  exit 1
552
- fi
552
+ fi
@@ -18,7 +18,7 @@ runs:
18
18
 
19
19
 
20
20
  - name: Trivy Vulnerability Scan (SARIF)
21
- uses: aquasecurity/trivy-action@0.28.0
21
+ uses: aquasecurity/trivy-action@0.33.1
22
22
  with:
23
23
  scan-type: 'fs'
24
24
  format: 'sarif'
@@ -31,7 +31,7 @@ runs:
31
31
  TRIVY_JAVA_DB_REPOSITORY: public.ecr.aws/aquasecurity/trivy-java-db:1
32
32
 
33
33
  - name: Trivy Vulnerability Scan (JSON)
34
- uses: aquasecurity/trivy-action@0.28.0
34
+ uses: aquasecurity/trivy-action@0.33.1
35
35
  with:
36
36
  scan-type: 'fs'
37
37
  format: 'json'
@@ -44,7 +44,7 @@ runs:
44
44
  TRIVY_JAVA_DB_REPOSITORY: public.ecr.aws/aquasecurity/trivy-java-db:1
45
45
 
46
46
  - name: Trivy Secret Scan (SARIF)
47
- uses: aquasecurity/trivy-action@0.28.0
47
+ uses: aquasecurity/trivy-action@0.33.1
48
48
  with:
49
49
  scan-type: 'fs'
50
50
  format: 'sarif'
@@ -57,7 +57,7 @@ runs:
57
57
  TRIVY_JAVA_DB_REPOSITORY: public.ecr.aws/aquasecurity/trivy-java-db:1
58
58
 
59
59
  - name: Trivy Secret Scan (JSON)
60
- uses: aquasecurity/trivy-action@0.28.0
60
+ uses: aquasecurity/trivy-action@0.33.1
61
61
  with:
62
62
  scan-type: 'fs'
63
63
  format: 'json'
@@ -119,22 +119,23 @@ runs:
119
119
  message-id: trivy-secret
120
120
  message-path: trivy-secret-results.md
121
121
 
122
- - name: Fail on High/Critical Vulnerabilities
122
+ - name: Fail on High/Critical Vulnerabilities (with fix available)
123
123
  if: inputs.add-report-comment-to-pr == 'true'
124
- uses: aquasecurity/trivy-action@0.28.0
124
+ uses: aquasecurity/trivy-action@0.33.1
125
125
  with:
126
126
  scan-type: 'fs'
127
127
  format: 'table'
128
128
  severity: 'CRITICAL,HIGH'
129
129
  exit-code: '1'
130
130
  scanners: 'vuln'
131
+ ignore-unfixed: true
131
132
  env:
132
133
  TRIVY_DB_REPOSITORY: public.ecr.aws/aquasecurity/trivy-db:2
133
134
  TRIVY_JAVA_DB_REPOSITORY: public.ecr.aws/aquasecurity/trivy-java-db:1
134
135
 
135
136
  - name: Fail on Any Secrets Found
136
137
  if: inputs.add-report-comment-to-pr == 'true'
137
- uses: aquasecurity/trivy-action@0.28.0
138
+ uses: aquasecurity/trivy-action@0.33.1
138
139
  with:
139
140
  scan-type: 'fs'
140
141
  format: 'table'
@@ -0,0 +1,107 @@
1
+ name: Trivy Container Scan for Atlan Apps
2
+
3
+ description: |
4
+ Runs Trivy security scanner on container images to detect and report vulnerabilities.
5
+ Builds the Docker image with Chainguard base image authentication and scans it.
6
+ Results are uploaded to the GitHub Security tab.
7
+
8
+ inputs:
9
+ chainguard-username:
10
+ description: Chainguard registry username
11
+ required: true
12
+ chainguard-password:
13
+ description: Chainguard registry password
14
+ required: true
15
+ github-token:
16
+ description: GitHub token for Docker build secrets
17
+ required: true
18
+ fail-on-vulns:
19
+ description: Whether to fail if HIGH/CRITICAL vulnerabilities with fixes are found
20
+ required: false
21
+ default: 'false'
22
+ skip-files:
23
+ description: Comma-separated list of files or directories to be skipped
24
+ required: false
25
+
26
+ outputs:
27
+ results-file:
28
+ description: Path to the JSON results file
29
+ value: ${{ steps.scan.outputs.results-file }}
30
+
31
+ runs:
32
+ using: "composite"
33
+ steps:
34
+ - name: Set up Docker Buildx
35
+ uses: docker/setup-buildx-action@v3
36
+
37
+ - name: Log in to Chainguard Container Registry
38
+ uses: docker/login-action@v3
39
+ with:
40
+ registry: cgr.dev
41
+ username: ${{ inputs.chainguard-username }}
42
+ password: ${{ inputs.chainguard-password }}
43
+
44
+ - name: Build Docker image
45
+ uses: docker/build-push-action@v6
46
+ with:
47
+ context: .
48
+ file: ./Dockerfile
49
+ push: false
50
+ load: true
51
+ tags: trivy-scan-target:latest
52
+ cache-from: type=gha
53
+ cache-to: type=gha,mode=max
54
+ secrets: |
55
+ "PRIVATE_REPO_ACCESS_TOKEN=${{ inputs.github-token }}"
56
+
57
+ - name: Run Trivy scan (JSON)
58
+ id: scan
59
+ uses: aquasecurity/trivy-action@0.33.1
60
+ with:
61
+ image-ref: 'trivy-scan-target:latest'
62
+ format: 'json'
63
+ output: 'trivy-container-results.json'
64
+ severity: 'CRITICAL,HIGH'
65
+ scanners: 'vuln'
66
+ env:
67
+ TRIVY_DB_REPOSITORY: public.ecr.aws/aquasecurity/trivy-db:2
68
+ TRIVY_JAVA_DB_REPOSITORY: public.ecr.aws/aquasecurity/trivy-java-db:1
69
+
70
+ - name: Set results file output
71
+ shell: bash
72
+ run: echo "results-file=trivy-container-results.json" >> $GITHUB_OUTPUT
73
+
74
+ - name: Run Trivy scan (SARIF)
75
+ uses: aquasecurity/trivy-action@0.33.1
76
+ with:
77
+ image-ref: 'trivy-scan-target:latest'
78
+ format: 'sarif'
79
+ output: 'trivy-container-results.sarif'
80
+ severity: 'CRITICAL,HIGH'
81
+ scanners: 'vuln'
82
+ skip-files: ${{ inputs.skip-files }}
83
+ env:
84
+ TRIVY_DB_REPOSITORY: public.ecr.aws/aquasecurity/trivy-db:2
85
+ TRIVY_JAVA_DB_REPOSITORY: public.ecr.aws/aquasecurity/trivy-java-db:1
86
+
87
+ - name: Upload scan results to GitHub Security tab
88
+ uses: github/codeql-action/upload-sarif@v3
89
+ if: always()
90
+ continue-on-error: true
91
+ with:
92
+ sarif_file: 'trivy-container-results.sarif'
93
+ category: 'trivy-container'
94
+
95
+ - name: Fail on HIGH/CRITICAL vulnerabilities (with fix available)
96
+ if: inputs.fail-on-vulns == 'true'
97
+ uses: aquasecurity/trivy-action@0.33.1
98
+ with:
99
+ image-ref: 'trivy-scan-target:latest'
100
+ format: 'table'
101
+ severity: 'CRITICAL,HIGH'
102
+ exit-code: '1'
103
+ scanners: 'vuln'
104
+ ignore-unfixed: true
105
+ env:
106
+ TRIVY_DB_REPOSITORY: public.ecr.aws/aquasecurity/trivy-db:2
107
+ TRIVY_JAVA_DB_REPOSITORY: public.ecr.aws/aquasecurity/trivy-java-db:1
@@ -0,0 +1,19 @@
1
+ version: 2
2
+ updates:
3
+ - package-ecosystem: pip
4
+ directory: "/"
5
+ schedule:
6
+ interval: weekly
7
+ open-pull-requests-limit: 5
8
+ groups:
9
+ python-deps:
10
+ patterns:
11
+ - "*"
12
+ update-types:
13
+ - "minor"
14
+ - "patch"
15
+
16
+ - package-ecosystem: "github-actions"
17
+ directory: "/"
18
+ schedule:
19
+ interval: weekly
@@ -0,0 +1,9 @@
1
+ ## v2.3.2 (February 04, 2026)
2
+
3
+ Full Changelog: https://github.com/atlanhq/application-sdk/compare/v2.3.1...v2.3.2
4
+
5
+ ### Bug Fixes
6
+
7
+ - update codeowner (#954) (by @OnkarVO7 in [3a29977](https://github.com/atlanhq/application-sdk/commit/3a29977))
8
+ - align daft writer behavior with pandas to prevent data loss (BLDX-305) (#953) (by @fyzanshaik-atlan in [1a73d02](https://github.com/atlanhq/application-sdk/commit/1a73d02))
9
+ - tune dependabot settings to reduce noise (#1008) (by @fyzanshaik-atlan in [50e09ac](https://github.com/atlanhq/application-sdk/commit/50e09ac))
@@ -97,4 +97,4 @@ jobs:
97
97
  github-token: ${{ secrets.ORG_PAT_GITHUB }}
98
98
  env:
99
99
  DOCKER_CLIENT_TIMEOUT: 600
100
- COMPOSE_HTTP_TIMEOUT: 600
100
+ COMPOSE_HTTP_TIMEOUT: 600
@@ -0,0 +1,74 @@
1
+ name: Publish Harbor Image (Release)
2
+
3
+ on:
4
+ release:
5
+ types: [published]
6
+ workflow_dispatch:
7
+
8
+ permissions:
9
+ contents: read
10
+ actions: read
11
+
12
+ jobs:
13
+ push-to-harbor:
14
+ runs-on: ubuntu-latest
15
+ concurrency:
16
+ group: ${{ github.workflow }}-${{ github.ref }}-harbor
17
+ cancel-in-progress: ${{ startsWith(github.ref, 'refs/pull/') }}
18
+ timeout-minutes: 20
19
+ steps:
20
+ - uses: actions/checkout@v4.0.0
21
+ with:
22
+ fetch-depth: 0
23
+
24
+ - name: Set up Buildx
25
+ id: buildx
26
+ uses: docker/setup-buildx-action@v3
27
+
28
+ - name: Get SDK version
29
+ id: get_version
30
+ run: echo "version=$(awk -F'"' '/^version = / {print $2}' pyproject.toml)" >> $GITHUB_OUTPUT
31
+
32
+ - name: Get short commit SHA
33
+ id: get_sha
34
+ run: echo "sha=${GITHUB_SHA::7}" >> $GITHUB_OUTPUT
35
+
36
+ - name: Log in to Atlan Harbor Registry
37
+ uses: docker/login-action@v3
38
+ with:
39
+ registry: registry.atlan.com
40
+ username: ${{ secrets.HARBOR_USERNAME }}
41
+ password: ${{ secrets.HARBOR_PASSWORD }}
42
+
43
+ - name: Log in to Chainguard Container Registry
44
+ uses: docker/login-action@v3
45
+ with:
46
+ registry: cgr.dev
47
+ username: ${{ secrets.CHAINGUARD_USERNAME }}
48
+ password: ${{ secrets.CHAINGUARD_PASSWORD }}
49
+
50
+ - name: Build, scan, and push image to Harbor
51
+ id: harbor_docker_build
52
+ uses: ./.github/actions/secure-build-push-apps
53
+ with:
54
+ branch: main
55
+ snyk-token: ${{ secrets.SNYK_TOKEN_BU_APPS }}
56
+ snyk-ghcr-integration-id: ${{ secrets.SNYK_GHCR_INTEGRATION_ID }}
57
+ snyk-docker-integration-id: ${{ secrets.SNYK_DOCKER_INTEGRATION_ID }}
58
+ snyk-integration-id: ${{ secrets.SNYK_INTEGRATION_ID }}
59
+ snyk-org-id: ${{ secrets.SNYK_ORG_ID }}
60
+ context: .
61
+ file: ./Dockerfile
62
+ push: true
63
+ platforms: linux/amd64,linux/arm64
64
+ tags: |
65
+ registry.atlan.com/public/application-sdk:main-latest
66
+ registry.atlan.com/public/application-sdk:main-${{ steps.get_version.outputs.version }}
67
+ registry.atlan.com/public/application-sdk:sha-${{ steps.get_sha.outputs.sha }}
68
+ build-args: |
69
+ ACCESS_TOKEN_USR=$GITHUB_ACTOR
70
+ ACCESS_TOKEN_PWD=${{ secrets.ORG_PAT_GITHUB }}
71
+ github-token: ${{ secrets.ORG_PAT_GITHUB }}
72
+ env:
73
+ DOCKER_CLIENT_TIMEOUT: 600
74
+ COMPOSE_HTTP_TIMEOUT: 600
@@ -14,6 +14,22 @@ permissions:
14
14
  actions: write
15
15
 
16
16
  jobs:
17
+ # Detect which files changed
18
+ changes:
19
+ name: Detect Changes
20
+ runs-on: ubuntu-latest
21
+ outputs:
22
+ container: ${{ steps.filter.outputs.container }}
23
+ steps:
24
+ - uses: actions/checkout@v5
25
+ - uses: dorny/paths-filter@v3
26
+ id: filter
27
+ with:
28
+ filters: |
29
+ container:
30
+ - 'Dockerfile'
31
+ - 'entrypoint.sh'
32
+
17
33
  # Conventional Commits
18
34
  commits:
19
35
  name: Conventional Commits
@@ -46,6 +62,20 @@ jobs:
46
62
  with:
47
63
  add-report-comment-to-pr: "true"
48
64
 
65
+ trivy-container:
66
+ name: Trivy Container Scan
67
+ needs: changes
68
+ if: needs.changes.outputs.container == 'true'
69
+ runs-on: ubuntu-latest
70
+ steps:
71
+ - uses: actions/checkout@v5
72
+ - uses: "./.github/actions/trivy-container"
73
+ with:
74
+ chainguard-username: ${{ secrets.CHAINGUARD_USERNAME }}
75
+ chainguard-password: ${{ secrets.CHAINGUARD_PASSWORD }}
76
+ github-token: ${{ secrets.ORG_PAT_GITHUB }}
77
+ fail-on-vulns: 'true'
78
+
49
79
  # Testing
50
80
  unit:
51
81
  name: Unit Tests
@@ -0,0 +1,122 @@
1
+ name: Scheduled Vulnerability Scan
2
+
3
+ on:
4
+ schedule:
5
+ # Run every Monday at 9 AM UTC
6
+ - cron: '0 9 * * 1'
7
+ workflow_dispatch: # Allow manual trigger
8
+
9
+ permissions:
10
+ contents: read
11
+ issues: write
12
+ security-events: write
13
+
14
+ jobs:
15
+ scan-base-image:
16
+ name: Scan SDK Base Image
17
+ runs-on: ubuntu-latest
18
+ steps:
19
+ - name: Checkout
20
+ uses: actions/checkout@v5
21
+
22
+ - name: Run container vulnerability scan
23
+ id: scan
24
+ uses: "./.github/actions/trivy-container"
25
+ with:
26
+ chainguard-username: ${{ secrets.CHAINGUARD_USERNAME }}
27
+ chainguard-password: ${{ secrets.CHAINGUARD_PASSWORD }}
28
+ github-token: ${{ secrets.GITHUB_TOKEN }}
29
+ fail-on-vulns: 'false'
30
+
31
+ - name: Check for daprd vulnerabilities
32
+ id: check-daprd
33
+ run: |
34
+ # Extract vulnerabilities specifically from daprd binary
35
+ DAPRD_VULNS=$(cat trivy-container-results.json | jq -r '
36
+ .Results[]
37
+ | select(.Target | contains("daprd"))
38
+ | .Vulnerabilities // []
39
+ | length
40
+ ' | awk '{s+=$1} END {print s+0}')
41
+
42
+ echo "daprd_vulns=$DAPRD_VULNS" >> $GITHUB_OUTPUT
43
+
44
+ if [ "$DAPRD_VULNS" -gt 0 ]; then
45
+ echo "::warning::Found $DAPRD_VULNS vulnerabilities in daprd runtime!"
46
+ echo "has_daprd_vulns=true" >> $GITHUB_OUTPUT
47
+ else
48
+ echo "daprd runtime is clean (0 vulnerabilities)"
49
+ echo "has_daprd_vulns=false" >> $GITHUB_OUTPUT
50
+ fi
51
+
52
+ - name: Check for CLI vulnerabilities
53
+ id: check-cli
54
+ run: |
55
+ # Extract vulnerabilities from dapr CLI
56
+ CLI_VULNS=$(cat trivy-container-results.json | jq -r '
57
+ .Results[]
58
+ | select(.Target | contains("usr/local/bin/dapr"))
59
+ | .Vulnerabilities // []
60
+ | length
61
+ ' | awk '{s+=$1} END {print s+0}')
62
+
63
+ echo "cli_vulns=$CLI_VULNS" >> $GITHUB_OUTPUT
64
+ echo "Found $CLI_VULNS HIGH/CRITICAL vulnerabilities in dapr CLI"
65
+
66
+ - name: Generate scan summary
67
+ run: |
68
+ echo "## Vulnerability Scan Summary" >> $GITHUB_STEP_SUMMARY
69
+ echo "" >> $GITHUB_STEP_SUMMARY
70
+ echo "| Component | HIGH/CRITICAL Vulns | Status |" >> $GITHUB_STEP_SUMMARY
71
+ echo "|-----------|---------------------|--------|" >> $GITHUB_STEP_SUMMARY
72
+ echo "| daprd (runtime) | ${{ steps.check-daprd.outputs.daprd_vulns }} | ${{ steps.check-daprd.outputs.daprd_vulns == '0' && '✅ Clean' || '⚠️ Action Required' }} |" >> $GITHUB_STEP_SUMMARY
73
+ echo "| dapr CLI | ${{ steps.check-cli.outputs.cli_vulns }} | ℹ️ Upstream issue |" >> $GITHUB_STEP_SUMMARY
74
+ echo "" >> $GITHUB_STEP_SUMMARY
75
+ echo "**Note:** CLI vulnerabilities are in unused code paths (Helm packages)." >> $GITHUB_STEP_SUMMARY
76
+
77
+ - name: Create issue if daprd has vulnerabilities
78
+ if: steps.check-daprd.outputs.has_daprd_vulns == 'true'
79
+ uses: actions/github-script@v7
80
+ with:
81
+ script: |
82
+ const title = '🚨 Security: Vulnerabilities detected in daprd runtime';
83
+ const body = `## Vulnerability Alert
84
+
85
+ The scheduled vulnerability scan has detected **HIGH/CRITICAL vulnerabilities** in the daprd runtime binary.
86
+
87
+ ### Details
88
+ - **Vulnerabilities found:** ${{ steps.check-daprd.outputs.daprd_vulns }}
89
+ - **Scan date:** ${new Date().toISOString().split('T')[0]}
90
+
91
+ ### Recommended Actions
92
+ 1. Check if Chainguard has a patched version: \`apk search dapr\`
93
+ 2. If available, update Dockerfile to use Chainguard APK
94
+ 3. If not, contact Chainguard via their support channel
95
+
96
+ ### References
97
+ - [Chainguard DAPR packages](https://images.chainguard.dev/directory/image/dapr-daprd/compare)
98
+ - [DAPR releases](https://github.com/dapr/dapr/releases)
99
+
100
+ /cc @atlanhq/builder-experience
101
+ `;
102
+
103
+ // Check if similar issue already exists
104
+ const issues = await github.rest.issues.listForRepo({
105
+ owner: context.repo.owner,
106
+ repo: context.repo.repo,
107
+ state: 'open',
108
+ labels: 'security,daprd-vulnerability'
109
+ });
110
+
111
+ if (issues.data.length === 0) {
112
+ await github.rest.issues.create({
113
+ owner: context.repo.owner,
114
+ repo: context.repo.repo,
115
+ title: title,
116
+ body: body,
117
+ labels: ['security', 'daprd-vulnerability', 'priority:high']
118
+ });
119
+ console.log('Created new security issue');
120
+ } else {
121
+ console.log('Security issue already exists, skipping creation');
122
+ }
@@ -7,12 +7,21 @@ on:
7
7
  secrets:
8
8
  ORG_PAT_GITHUB:
9
9
  required: true
10
+ CHAINGUARD_USERNAME:
11
+ required: true
12
+ CHAINGUARD_PASSWORD:
13
+ required: true
10
14
 
11
15
  inputs:
12
16
  skip-files:
13
17
  description: "Comma-separated list of files or directories to be skipped"
14
18
  required: false
15
19
  type: string
20
+ fail-on-vulns:
21
+ description: "Whether to fail if HIGH/CRITICAL vulnerabilities with fixes are found"
22
+ required: false
23
+ type: string
24
+ default: 'true'
16
25
 
17
26
  permissions:
18
27
  contents: read
@@ -29,4 +38,8 @@ jobs:
29
38
 
30
39
  - uses: "atlanhq/application-sdk/.github/actions/trivy-container@main"
31
40
  with:
41
+ chainguard-username: ${{ secrets.CHAINGUARD_USERNAME }}
42
+ chainguard-password: ${{ secrets.CHAINGUARD_PASSWORD }}
32
43
  github-token: ${{ secrets.ORG_PAT_GITHUB }}
44
+ skip-files: ${{ inputs.skip-files }}
45
+ fail-on-vulns: ${{ inputs.fail-on-vulns }}
@@ -25,6 +25,14 @@ repos:
25
25
  - id: conventional-pre-commit
26
26
  stages: [commit-msg]
27
27
  args: []
28
+ - repo: local
29
+ hooks:
30
+ - id: sync-requirements-txt
31
+ name: Sync requirements.txt with uv.lock
32
+ entry: bash -c 'uv export --all-extras --no-hashes > requirements.txt && git add requirements.txt'
33
+ language: system
34
+ files: ^uv\.lock$
35
+ pass_filenames: false
28
36
  - repo: https://github.com/RobertCraigie/pyright-python
29
37
  rev: v1.1.393
30
38
  hooks:
@@ -5,11 +5,23 @@ Atlan Application SDK is a Python library for building applications on the Atlan
5
5
  Package manager: `uv` (task runner via `poe` in `pyproject.toml`).
6
6
 
7
7
  Non-standard commands used across the repo:
8
+
8
9
  - `uv sync --all-extras --all-groups` (full dev/test deps)
9
10
  - `uv run poe start-deps` (local Dapr + Temporal)
10
11
  - `uv run poe generate-apidocs` (MkDocs + API docs)
12
+ - `uv run pre-commit run --files <file>` (run pre-commit on specific file)
13
+ - `uv run pre-commit run --all-files` (run pre-commit on all files)
14
+
15
+ **IMPORTANT**: Always run pre-commit checks before committing. CI will fail if pre-commit checks fail.
16
+
17
+ **IMPORTANT**: For Dockerfile or dependency changes, run security scans (`trivy`, `grype`) before pushing. See `docs/build-scan-overview.md`.
18
+
19
+ **Commit Rules**:
20
+ - Never add Co-Authored-By lines to commits
21
+ - Follow Conventional Commits format from `.cursor/rules/commits.mdc`
11
22
 
12
23
  Where to look next (progressive disclosure):
24
+
13
25
  - `docs/agents/project-structure.md` — quick map of key directories.
14
26
  - `docs/agents/dev-commands.md` — setup and repeatable workflows.
15
27
  - `docs/agents/coding-standards.md` — formatting, logging, exceptions, performance.
@@ -18,3 +30,4 @@ Where to look next (progressive disclosure):
18
30
  - `docs/agents/docs-updates.md` — which conceptual docs to update with code changes.
19
31
  - `docs/agents/review.md` — code review checklist.
20
32
  - `docs/agents/deepwiki.md` — DeepWiki MCP setup and when to verify SDK details.
33
+ - `docs/build-scan-overview.md` — image hierarchy, security scanning, Dapr setup.
@@ -1,5 +1,16 @@
1
1
  # Changelog
2
2
 
3
+ ## v2.3.2 (February 04, 2026)
4
+
5
+ Full Changelog: https://github.com/atlanhq/application-sdk/compare/v2.3.1...v2.3.2
6
+
7
+ ### Bug Fixes
8
+
9
+ - update codeowner (#954) (by @OnkarVO7 in [3a29977](https://github.com/atlanhq/application-sdk/commit/3a29977))
10
+ - align daft writer behavior with pandas to prevent data loss (BLDX-305) (#953) (by @fyzanshaik-atlan in [1a73d02](https://github.com/atlanhq/application-sdk/commit/1a73d02))
11
+ - tune dependabot settings to reduce noise (#1008) (by @fyzanshaik-atlan in [50e09ac](https://github.com/atlanhq/application-sdk/commit/50e09ac))
12
+
13
+
3
14
  ## v2.3.1 (January 28, 2026)
4
15
 
5
16
  Full Changelog: https://github.com/atlanhq/application-sdk/compare/v2.3.0...v2.3.1
@@ -8,6 +8,16 @@ Non-standard commands used across the repo:
8
8
  - `uv sync --all-extras --all-groups` (full dev/test deps)
9
9
  - `uv run poe start-deps` (local Dapr + Temporal)
10
10
  - `uv run poe generate-apidocs` (MkDocs + API docs)
11
+ - `uv run pre-commit run --files <file>` (run pre-commit on specific file)
12
+ - `uv run pre-commit run --all-files` (run pre-commit on all files)
13
+
14
+ **IMPORTANT**: Always run pre-commit checks before committing. CI will fail if pre-commit checks fail.
15
+
16
+ **IMPORTANT**: For Dockerfile or dependency changes, run security scans (`trivy`, `grype`) before pushing. See `docs/build-scan-overview.md`.
17
+
18
+ **Commit Rules**:
19
+ - Never add Co-Authored-By lines to commits
20
+ - Follow Conventional Commits format from `.cursor/rules/commits.mdc`
11
21
 
12
22
  Where to look next (progressive disclosure):
13
23
  - `docs/agents/project-structure.md` — quick map of key directories.
@@ -18,3 +28,4 @@ Where to look next (progressive disclosure):
18
28
  - `docs/agents/docs-updates.md` — which conceptual docs to update with code changes.
19
29
  - `docs/agents/review.md` — code review checklist.
20
30
  - `docs/agents/deepwiki.md` — DeepWiki MCP setup and when to verify SDK details.
31
+ - `docs/build-scan-overview.md` — image hierarchy, security scanning, Dapr setup.