synapse-sdk 1.0.0a91__tar.gz → 1.0.0a93__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.
Potentially problematic release.
This version of synapse-sdk might be problematic. Click here for more details.
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/PKG-INFO +1 -1
- synapse_sdk-1.0.0a93/requirements.txt +213 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/plugins/categories/export/actions/export.py +15 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/plugins/categories/pre_annotation/actions/to_task.py +169 -30
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/shared/enums.py +32 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk.egg-info/PKG-INFO +1 -1
- synapse_sdk-1.0.0a91/requirements.txt +0 -13
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/.claude/commands/compare-branch.md +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/.claude/commands/review-pr.md +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/.claude/commands/update-pr-desc.md +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/.coverage +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/.github/workflows/lint.yml +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/.github/workflows/pypi-publish.yml +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/.github/workflows/test.yml +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/.gitignore +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/.mcp.json +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/.pre-commit-config.yaml +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/AGENT.md +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/CLAUDE.md +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/GEMINI.md +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/LICENSE +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/Makefile +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/P1_rules.md +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/P2_rules.md +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/P3_rules.md +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/P4_rules.md +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/README.md +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/docs/api/clients/agent.md +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/docs/api/clients/backend.md +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/docs/api/clients/base.md +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/docs/api/index.md +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/docs/api/plugins/categories.md +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/docs/api/plugins/models.md +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/docs/api/plugins/utils.md +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/docs/api/utils/file.md +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/docs/api/utils/storage.md +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/docs/api/utils/types.md +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/docs/categories.md +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/docs/concepts/index.md +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/docs/configuration.md +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/docs/contributing.md +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/docs/examples/index.md +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/docs/faq.md +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/docs/features/converters/index.md +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/docs/features/index.md +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/docs/features/plugins/index.md +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/docs/i18n/ko/code.json +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/docs/i18n/ko/docusaurus-plugin-content-docs/current/introduction.md +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/docs/i18n/ko/docusaurus-plugin-content-docs/current.json +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/docs/i18n/ko/docusaurus-theme-classic/footer.json +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/docs/i18n/ko/docusaurus-theme-classic/navbar.json +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/docs/installation.md +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/docs/introduction.md +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/docs/quickstart.md +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/docs/troubleshooting.md +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/docs/tutorial-basics/_category_.json +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/docs/tutorial-basics/congratulations.md +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/docs/tutorial-basics/create-a-blog-post.md +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/docs/tutorial-basics/create-a-document.md +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/docs/tutorial-basics/create-a-page.md +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/docs/tutorial-basics/deploy-your-site.md +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/docs/tutorial-basics/markdown-features.mdx +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/docs/tutorial-extras/_category_.json +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/docs/tutorial-extras/img/docsVersionDropdown.png +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/docs/tutorial-extras/img/localeDropdown.png +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/docs/tutorial-extras/manage-docs-versions.md +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/docs/tutorial-extras/translate-your-site.md +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/locale/en/LC_MESSAGES/messages.mo +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/locale/en/LC_MESSAGES/messages.po +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/locale/ko/LC_MESSAGES/messages.mo +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/locale/ko/LC_MESSAGES/messages.po +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/pyproject.toml +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/pytest-ci.ini +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/pytest.ini +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/requirements.test.txt +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/setup.cfg +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/__init__.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/cli/__init__.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/cli/alias/__init__.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/cli/alias/create.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/cli/alias/dataclass.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/cli/alias/default.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/cli/alias/delete.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/cli/alias/list.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/cli/alias/read.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/cli/alias/update.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/cli/alias/utils.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/cli/config.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/cli/devtools.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/cli/plugin/__init__.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/cli/plugin/create.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/cli/plugin/publish.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/cli/plugin/run.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/clients/__init__.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/clients/agent/__init__.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/clients/agent/core.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/clients/agent/ray.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/clients/agent/service.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/clients/backend/__init__.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/clients/backend/annotation.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/clients/backend/core.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/clients/backend/data_collection.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/clients/backend/hitl.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/clients/backend/integration.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/clients/backend/ml.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/clients/backend/models.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/clients/base.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/clients/exceptions.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/clients/ray/__init__.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/clients/ray/core.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/clients/ray/serve.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/clients/utils.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/clients/validators/__init__.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/clients/validators/collections.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/devtools/__init__.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/devtools/config.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/devtools/docs/.gitignore +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/devtools/docs/README.md +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/devtools/docs/blog/2019-05-28-first-blog-post.md +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/devtools/docs/blog/2019-05-29-long-blog-post.md +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/devtools/docs/blog/2021-08-01-mdx-blog-post.mdx +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/devtools/docs/blog/2021-08-26-welcome/docusaurus-plushie-banner.jpeg +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/devtools/docs/blog/2021-08-26-welcome/index.md +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/devtools/docs/blog/authors.yml +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/devtools/docs/blog/tags.yml +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/devtools/docs/docusaurus.config.ts +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/devtools/docs/package-lock.json +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/devtools/docs/package.json +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/devtools/docs/sidebars.ts +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/devtools/docs/src/components/HomepageFeatures/index.tsx +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/devtools/docs/src/components/HomepageFeatures/styles.module.css +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/devtools/docs/src/css/custom.css +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/devtools/docs/src/pages/index.module.css +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/devtools/docs/src/pages/index.tsx +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/devtools/docs/src/pages/markdown-page.md +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/devtools/docs/static/.nojekyll +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/devtools/docs/static/img/docusaurus-social-card.jpg +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/devtools/docs/static/img/docusaurus.png +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/devtools/docs/static/img/favicon.ico +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/devtools/docs/static/img/logo.png +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/devtools/docs/static/img/undraw_docusaurus_mountain.svg +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/devtools/docs/static/img/undraw_docusaurus_react.svg +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/devtools/docs/static/img/undraw_docusaurus_tree.svg +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/devtools/docs/tsconfig.json +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/devtools/models.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/devtools/server.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/devtools/utils.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/devtools/web/.gitignore +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/devtools/web/README.md +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/devtools/web/dist/index.html +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/devtools/web/index.html +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/devtools/web/jsconfig.json +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/devtools/web/package-lock.json +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/devtools/web/package.json +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/devtools/web/pnpm-lock.yaml +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/devtools/web/src/App.jsx +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/devtools/web/src/App.module.css +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/devtools/web/src/assets/favicon.ico +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/devtools/web/src/components/Breadcrumbs.jsx +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/devtools/web/src/components/Layout.jsx +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/devtools/web/src/components/LogViewer.jsx +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/devtools/web/src/components/MessageViewer.jsx +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/devtools/web/src/components/NavigationSidebar.jsx +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/devtools/web/src/components/ServerStatusBar.jsx +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/devtools/web/src/components/icons.jsx +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/devtools/web/src/index.css +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/devtools/web/src/index.jsx +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/devtools/web/src/logo.svg +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/devtools/web/src/router.jsx +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/devtools/web/src/utils/api.js +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/devtools/web/src/views/ApplicationDetailView.jsx +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/devtools/web/src/views/ApplicationsView.jsx +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/devtools/web/src/views/HomeView.jsx +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/devtools/web/src/views/JobDetailView.jsx +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/devtools/web/src/views/PluginView.jsx +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/devtools/web/vite.config.js +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/i18n.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/loggers.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/plugins/__init__.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/plugins/categories/__init__.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/plugins/categories/base.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/plugins/categories/data_validation/__init__.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/plugins/categories/data_validation/actions/__init__.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/plugins/categories/data_validation/actions/validation.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/plugins/categories/data_validation/templates/config.yaml +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/plugins/categories/data_validation/templates/plugin/__init__.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/plugins/categories/data_validation/templates/plugin/validation.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/plugins/categories/decorators.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/plugins/categories/export/__init__.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/plugins/categories/export/actions/__init__.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/plugins/categories/export/enums.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/plugins/categories/export/templates/config.yaml +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/plugins/categories/export/templates/plugin/__init__.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/plugins/categories/export/templates/plugin/export.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/plugins/categories/neural_net/__init__.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/plugins/categories/neural_net/actions/__init__.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/plugins/categories/neural_net/actions/deployment.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/plugins/categories/neural_net/actions/gradio.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/plugins/categories/neural_net/actions/inference.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/plugins/categories/neural_net/actions/test.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/plugins/categories/neural_net/actions/train.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/plugins/categories/neural_net/actions/tune.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/plugins/categories/neural_net/base/__init__.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/plugins/categories/neural_net/base/inference.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/plugins/categories/neural_net/templates/config.yaml +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/plugins/categories/neural_net/templates/plugin/__init__.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/plugins/categories/neural_net/templates/plugin/inference.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/plugins/categories/neural_net/templates/plugin/test.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/plugins/categories/neural_net/templates/plugin/train.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/plugins/categories/post_annotation/__init__.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/plugins/categories/post_annotation/actions/__init__.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/plugins/categories/post_annotation/actions/post_annotation.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/plugins/categories/post_annotation/templates/config.yaml +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/plugins/categories/post_annotation/templates/plugin/__init__.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/plugins/categories/post_annotation/templates/plugin/post_annotation.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/plugins/categories/pre_annotation/__init__.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/plugins/categories/pre_annotation/actions/__init__.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/plugins/categories/pre_annotation/actions/pre_annotation.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/plugins/categories/pre_annotation/templates/config.yaml +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/plugins/categories/pre_annotation/templates/plugin/__init__.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/plugins/categories/pre_annotation/templates/plugin/pre_annotation.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/plugins/categories/pre_annotation/templates/plugin/to_task.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/plugins/categories/registry.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/plugins/categories/smart_tool/__init__.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/plugins/categories/smart_tool/actions/__init__.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/plugins/categories/smart_tool/actions/auto_label.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/plugins/categories/smart_tool/templates/config.yaml +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/plugins/categories/smart_tool/templates/plugin/__init__.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/plugins/categories/smart_tool/templates/plugin/auto_label.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/plugins/categories/templates.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/plugins/categories/upload/__init__.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/plugins/categories/upload/actions/__init__.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/plugins/categories/upload/actions/upload.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/plugins/categories/upload/templates/config.yaml +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/plugins/categories/upload/templates/plugin/__init__.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/plugins/categories/upload/templates/plugin/upload.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/plugins/enums.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/plugins/exceptions.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/plugins/models.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/plugins/templates/cookiecutter.json +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/plugins/templates/hooks/post_gen_project.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/plugins/templates/hooks/pre_prompt.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/plugins/templates/plugin-config-schema.json +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/plugins/templates/schema.json +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/plugins/templates/synapse-{{cookiecutter.plugin_code}}-plugin/.gitignore +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/plugins/templates/synapse-{{cookiecutter.plugin_code}}-plugin/.pre-commit-config.yaml +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/plugins/templates/synapse-{{cookiecutter.plugin_code}}-plugin/README.md +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/plugins/templates/synapse-{{cookiecutter.plugin_code}}-plugin/config.yaml +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/plugins/templates/synapse-{{cookiecutter.plugin_code}}-plugin/plugin/__init__.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/plugins/templates/synapse-{{cookiecutter.plugin_code}}-plugin/pyproject.toml +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/plugins/templates/synapse-{{cookiecutter.plugin_code}}-plugin/requirements.txt +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/plugins/upload.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/plugins/utils/__init__.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/plugins/utils/actions.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/plugins/utils/config.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/plugins/utils/legacy.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/plugins/utils/registry.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/shared/__init__.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/types.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/utils/__init__.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/utils/converters/__init__.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/utils/converters/coco/__init__.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/utils/converters/coco/from_dm.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/utils/converters/coco/to_dm.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/utils/converters/dm/__init__.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/utils/converters/dm/from_v1.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/utils/converters/dm/to_v1.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/utils/converters/pascal/__init__.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/utils/converters/pascal/from_dm.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/utils/converters/pascal/to_dm.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/utils/converters/yolo/__init__.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/utils/converters/yolo/from_dm.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/utils/converters/yolo/to_dm.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/utils/dataset.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/utils/debug.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/utils/file.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/utils/http.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/utils/module_loading.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/utils/network.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/utils/pydantic/__init__.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/utils/pydantic/config.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/utils/pydantic/errors.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/utils/pydantic/validators.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/utils/storage/__init__.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/utils/storage/providers/__init__.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/utils/storage/providers/file_system.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/utils/storage/providers/gcp.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/utils/storage/providers/http.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/utils/storage/providers/s3.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/utils/storage/providers/sftp.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/utils/storage/registry.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk/utils/string.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk.egg-info/SOURCES.txt +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk.egg-info/dependency_links.txt +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk.egg-info/entry_points.txt +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk.egg-info/requires.txt +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/synapse_sdk.egg-info/top_level.txt +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/README.md +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/__init__.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/clients/__init__.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/clients/conftest.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/clients/test_backend_models.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/clients/test_base_client.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/clients/test_collection_validators.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/conftest.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/loggers/__init__.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/loggers/conftest.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/loggers/test_base_logger.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/plugins/conftest.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/plugins/data_validation/__init__.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/plugins/data_validation/validation/__init__.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/plugins/data_validation/validation/test_validation_action.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/plugins/utils/__init__.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/plugins/utils/test_actions.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/plugins/utils/test_config.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/plugins/utils/test_registry.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/test_cli.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/test_cli_integration.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/__init__,py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/__init__.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/conftest.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/__init__.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/coco.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/image/coco/categorized/test/annotations.json +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/image/coco/categorized/test/new_dm_data8.jpg +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/image/coco/categorized/test/new_dm_data9.jpg +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/image/coco/categorized/train/annotations.json +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/image/coco/categorized/train/new_dm_data4.jpg +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/image/coco/categorized/train/new_dm_data5.jpg +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/image/coco/categorized/train/new_dm_data6.jpg +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/image/coco/categorized/valid/annotations.json +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/image/coco/categorized/valid/new_dm_data7.jpg +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/image/coco/not_categorized/annotations.json +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/image/coco/not_categorized/new_dm_data1.jpg +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/image/coco/not_categorized/new_dm_data2.jpg +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/image/coco/not_categorized/new_dm_data3.jpg +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/image/dm/categorized/test/json/dm_1.json +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/image/dm/categorized/test/json/dm_2.json +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/image/dm/categorized/test/json/dm_3.json +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/image/dm/categorized/test/original_files/dm_1.jpg +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/image/dm/categorized/test/original_files/dm_2.jpg +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/image/dm/categorized/test/original_files/dm_3.jpg +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/image/dm/categorized/train/json/dm_4.json +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/image/dm/categorized/train/json/dm_5.json +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/image/dm/categorized/train/json/dm_6.json +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/image/dm/categorized/train/json/dm_7.json +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/image/dm/categorized/train/original_files/dm_4.jpg +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/image/dm/categorized/train/original_files/dm_5.jpg +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/image/dm/categorized/train/original_files/dm_6.jpg +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/image/dm/categorized/train/original_files/dm_7.jpg +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/image/dm/categorized/valid/json/dm_8.json +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/image/dm/categorized/valid/json/dm_9.json +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/image/dm/categorized/valid/original_files/dm_8.jpg +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/image/dm/categorized/valid/original_files/dm_9.jpg +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/image/dm/not_categorized/json/dm_1.json +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/image/dm/not_categorized/json/dm_2.json +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/image/dm/not_categorized/json/dm_3.json +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/image/dm/not_categorized/original_files/dm_1.jpg +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/image/dm/not_categorized/original_files/dm_2.jpg +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/image/dm/not_categorized/original_files/dm_3.jpg +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/image/dm/ver1/json/25669.json +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/image/dm/ver2/json/25669.json +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/image/pascal/categorized/classes.txt +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/image/pascal/categorized/test/Annotations/9139.xml +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/image/pascal/categorized/test/Annotations/9140.xml +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/image/pascal/categorized/test/Annotations/9141.xml +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/image/pascal/categorized/test/Images/9139.jpg +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/image/pascal/categorized/test/Images/9140.jpg +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/image/pascal/categorized/test/Images/9141.jpg +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/image/pascal/categorized/train/Annotations/9136.xml +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/image/pascal/categorized/train/Annotations/9137.xml +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/image/pascal/categorized/train/Annotations/9138.xml +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/image/pascal/categorized/train/Images/9136.jpg +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/image/pascal/categorized/train/Images/9137.jpg +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/image/pascal/categorized/train/Images/9138.jpg +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/image/pascal/categorized/valid/Annotations/9125.xml +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/image/pascal/categorized/valid/Annotations/9126.xml +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/image/pascal/categorized/valid/Annotations/9127.xml +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/image/pascal/categorized/valid/Images/9125.jpg +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/image/pascal/categorized/valid/Images/9126.jpg +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/image/pascal/categorized/valid/Images/9127.jpg +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/image/pascal/not_categorized/Annotations/9122.xml +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/image/pascal/not_categorized/Annotations/9123.xml +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/image/pascal/not_categorized/Annotations/9124.xml +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/image/pascal/not_categorized/Images/9122.jpg +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/image/pascal/not_categorized/Images/9123.jpg +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/image/pascal/not_categorized/Images/9124.jpg +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/image/pascal/not_categorized/classes.txt +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/image/yolo/categorized/dataset.yaml +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/image/yolo/categorized/test/images/13744.jpg +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/image/yolo/categorized/test/images/13745.jpg +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/image/yolo/categorized/test/images/13746.jpg +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/image/yolo/categorized/test/labels/13744.txt +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/image/yolo/categorized/test/labels/13745.txt +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/image/yolo/categorized/test/labels/13746.txt +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/image/yolo/categorized/train/images/13782.jpg +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/image/yolo/categorized/train/labels/13782.txt +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/image/yolo/categorized/valid/images/13761.jpg +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/image/yolo/categorized/valid/images/13764.jpg +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/image/yolo/categorized/valid/labels/13761.txt +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/image/yolo/categorized/valid/labels/13764.txt +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/image/yolo/not_categorized/classes.txt +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/image/yolo/not_categorized/dataset.yaml +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/image/yolo/not_categorized/images/25332.jpg +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/image/yolo/not_categorized/images/25334.jpg +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/image/yolo/not_categorized/labels/25332.txt +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/image/yolo/not_categorized/labels/25334.txt +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/pcd/dm/ver1/json/23791.json +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/pcd/dm/ver2/json/23791.json +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/prompt/dm/ver1/json/18662.json +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/prompt/dm/ver2/json/18662.json +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/text/dm/ver1/json/23811.json +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/text/dm/ver2/json/23811.json +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/video/dm/ver1/json/23831.json +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/data_types/video/dm/ver2/json/23831.json +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/dm_schema.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/pascal.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/fixtures/yolo.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/test_coco_from_dm.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/test_coco_to_dm.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/test_dm_v1_to_v2.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/test_dm_v2_to_v1.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/test_pascal_from_dm.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/test_pascal_to_dm.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/test_yolo_from_dm.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/converters/test_yolo_to_dm.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/storage/conftest.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/storage/test_file_system_storage.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/storage/test_provider_selection.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/tests/utils/test_debug.py +0 -0
- {synapse_sdk-1.0.0a91 → synapse_sdk-1.0.0a93}/uv.lock +0 -0
|
@@ -0,0 +1,213 @@
|
|
|
1
|
+
# This file was autogenerated by uv via the following command:
|
|
2
|
+
# uv pip compile pyproject.toml -o requirements.txt
|
|
3
|
+
aiohappyeyeballs==2.6.1
|
|
4
|
+
# via aiohttp
|
|
5
|
+
aiohttp==3.12.15
|
|
6
|
+
# via gcsfs
|
|
7
|
+
aiosignal==1.4.0
|
|
8
|
+
# via aiohttp
|
|
9
|
+
annotated-types==0.7.0
|
|
10
|
+
# via pydantic
|
|
11
|
+
arrow==1.3.0
|
|
12
|
+
# via cookiecutter
|
|
13
|
+
attrs==25.3.0
|
|
14
|
+
# via aiohttp
|
|
15
|
+
bcrypt==4.3.0
|
|
16
|
+
# via paramiko
|
|
17
|
+
binaryornot==0.4.4
|
|
18
|
+
# via cookiecutter
|
|
19
|
+
blessed==1.21.0
|
|
20
|
+
# via inquirer
|
|
21
|
+
boto3==1.40.0
|
|
22
|
+
# via synapse-sdk (pyproject.toml)
|
|
23
|
+
botocore==1.40.0
|
|
24
|
+
# via
|
|
25
|
+
# boto3
|
|
26
|
+
# s3fs
|
|
27
|
+
# s3transfer
|
|
28
|
+
cachetools==5.5.2
|
|
29
|
+
# via google-auth
|
|
30
|
+
certifi==2025.7.14
|
|
31
|
+
# via requests
|
|
32
|
+
cffi==1.17.1
|
|
33
|
+
# via
|
|
34
|
+
# cryptography
|
|
35
|
+
# pynacl
|
|
36
|
+
chardet==5.2.0
|
|
37
|
+
# via binaryornot
|
|
38
|
+
charset-normalizer==3.4.2
|
|
39
|
+
# via requests
|
|
40
|
+
click==8.2.1
|
|
41
|
+
# via
|
|
42
|
+
# synapse-sdk (pyproject.toml)
|
|
43
|
+
# cookiecutter
|
|
44
|
+
cookiecutter==2.6.0
|
|
45
|
+
# via synapse-sdk (pyproject.toml)
|
|
46
|
+
cryptography==45.0.5
|
|
47
|
+
# via paramiko
|
|
48
|
+
decorator==5.2.1
|
|
49
|
+
# via gcsfs
|
|
50
|
+
editor==1.6.6
|
|
51
|
+
# via inquirer
|
|
52
|
+
et-xmlfile==2.0.0
|
|
53
|
+
# via openpyxl
|
|
54
|
+
frozenlist==1.7.0
|
|
55
|
+
# via
|
|
56
|
+
# aiohttp
|
|
57
|
+
# aiosignal
|
|
58
|
+
fsspec==2025.3.2
|
|
59
|
+
# via
|
|
60
|
+
# synapse-sdk (pyproject.toml)
|
|
61
|
+
# gcsfs
|
|
62
|
+
# s3fs
|
|
63
|
+
# universal-pathlib
|
|
64
|
+
gcsfs==2025.3.2
|
|
65
|
+
# via fsspec
|
|
66
|
+
google-api-core==2.25.1
|
|
67
|
+
# via
|
|
68
|
+
# google-cloud-core
|
|
69
|
+
# google-cloud-storage
|
|
70
|
+
google-auth==2.40.3
|
|
71
|
+
# via
|
|
72
|
+
# gcsfs
|
|
73
|
+
# google-api-core
|
|
74
|
+
# google-auth-oauthlib
|
|
75
|
+
# google-cloud-core
|
|
76
|
+
# google-cloud-storage
|
|
77
|
+
google-auth-oauthlib==1.2.2
|
|
78
|
+
# via gcsfs
|
|
79
|
+
google-cloud-core==2.4.3
|
|
80
|
+
# via google-cloud-storage
|
|
81
|
+
google-cloud-storage==3.2.0
|
|
82
|
+
# via gcsfs
|
|
83
|
+
google-crc32c==1.7.1
|
|
84
|
+
# via
|
|
85
|
+
# google-cloud-storage
|
|
86
|
+
# google-resumable-media
|
|
87
|
+
google-resumable-media==2.7.2
|
|
88
|
+
# via google-cloud-storage
|
|
89
|
+
googleapis-common-protos==1.70.0
|
|
90
|
+
# via google-api-core
|
|
91
|
+
idna==3.10
|
|
92
|
+
# via
|
|
93
|
+
# requests
|
|
94
|
+
# yarl
|
|
95
|
+
inquirer==3.4.0
|
|
96
|
+
# via synapse-sdk (pyproject.toml)
|
|
97
|
+
jinja2==3.1.6
|
|
98
|
+
# via cookiecutter
|
|
99
|
+
jmespath==1.0.1
|
|
100
|
+
# via
|
|
101
|
+
# boto3
|
|
102
|
+
# botocore
|
|
103
|
+
markdown-it-py==3.0.0
|
|
104
|
+
# via rich
|
|
105
|
+
markupsafe==3.0.2
|
|
106
|
+
# via jinja2
|
|
107
|
+
mdurl==0.1.2
|
|
108
|
+
# via markdown-it-py
|
|
109
|
+
multidict==6.6.3
|
|
110
|
+
# via
|
|
111
|
+
# aiohttp
|
|
112
|
+
# yarl
|
|
113
|
+
oauthlib==3.3.1
|
|
114
|
+
# via requests-oauthlib
|
|
115
|
+
openpyxl==3.1.5
|
|
116
|
+
# via synapse-sdk (pyproject.toml)
|
|
117
|
+
paramiko==3.5.1
|
|
118
|
+
# via fsspec
|
|
119
|
+
pillow==11.3.0
|
|
120
|
+
# via synapse-sdk (pyproject.toml)
|
|
121
|
+
propcache==0.3.2
|
|
122
|
+
# via
|
|
123
|
+
# aiohttp
|
|
124
|
+
# yarl
|
|
125
|
+
proto-plus==1.26.1
|
|
126
|
+
# via google-api-core
|
|
127
|
+
protobuf==6.31.1
|
|
128
|
+
# via
|
|
129
|
+
# google-api-core
|
|
130
|
+
# googleapis-common-protos
|
|
131
|
+
# proto-plus
|
|
132
|
+
pyasn1==0.6.1
|
|
133
|
+
# via
|
|
134
|
+
# pyasn1-modules
|
|
135
|
+
# rsa
|
|
136
|
+
pyasn1-modules==0.4.2
|
|
137
|
+
# via google-auth
|
|
138
|
+
pycparser==2.22
|
|
139
|
+
# via cffi
|
|
140
|
+
pydantic==2.11.7
|
|
141
|
+
# via synapse-sdk (pyproject.toml)
|
|
142
|
+
pydantic-core==2.33.2
|
|
143
|
+
# via pydantic
|
|
144
|
+
pygments==2.19.2
|
|
145
|
+
# via rich
|
|
146
|
+
pyjwt==2.10.1
|
|
147
|
+
# via synapse-sdk (pyproject.toml)
|
|
148
|
+
pynacl==1.5.0
|
|
149
|
+
# via paramiko
|
|
150
|
+
python-dateutil==2.9.0.post0
|
|
151
|
+
# via
|
|
152
|
+
# arrow
|
|
153
|
+
# botocore
|
|
154
|
+
python-dotenv==1.1.1
|
|
155
|
+
# via synapse-sdk (pyproject.toml)
|
|
156
|
+
python-slugify==8.0.4
|
|
157
|
+
# via cookiecutter
|
|
158
|
+
pyyaml==6.0.2
|
|
159
|
+
# via
|
|
160
|
+
# synapse-sdk (pyproject.toml)
|
|
161
|
+
# cookiecutter
|
|
162
|
+
readchar==4.2.1
|
|
163
|
+
# via inquirer
|
|
164
|
+
requests==2.32.4
|
|
165
|
+
# via
|
|
166
|
+
# synapse-sdk (pyproject.toml)
|
|
167
|
+
# cookiecutter
|
|
168
|
+
# gcsfs
|
|
169
|
+
# google-api-core
|
|
170
|
+
# google-cloud-storage
|
|
171
|
+
# requests-oauthlib
|
|
172
|
+
requests-oauthlib==2.0.0
|
|
173
|
+
# via google-auth-oauthlib
|
|
174
|
+
rich==14.1.0
|
|
175
|
+
# via cookiecutter
|
|
176
|
+
rsa==4.9.1
|
|
177
|
+
# via google-auth
|
|
178
|
+
runs==1.2.2
|
|
179
|
+
# via editor
|
|
180
|
+
s3fs==0.4.2
|
|
181
|
+
# via fsspec
|
|
182
|
+
s3transfer==0.13.1
|
|
183
|
+
# via boto3
|
|
184
|
+
six==1.17.0
|
|
185
|
+
# via python-dateutil
|
|
186
|
+
text-unidecode==1.3
|
|
187
|
+
# via python-slugify
|
|
188
|
+
tqdm==4.67.1
|
|
189
|
+
# via synapse-sdk (pyproject.toml)
|
|
190
|
+
types-python-dateutil==2.9.0.20250708
|
|
191
|
+
# via arrow
|
|
192
|
+
typing-extensions==4.14.1
|
|
193
|
+
# via
|
|
194
|
+
# aiosignal
|
|
195
|
+
# pydantic
|
|
196
|
+
# pydantic-core
|
|
197
|
+
# typing-inspection
|
|
198
|
+
typing-inspection==0.4.1
|
|
199
|
+
# via pydantic
|
|
200
|
+
universal-pathlib==0.2.6
|
|
201
|
+
# via synapse-sdk (pyproject.toml)
|
|
202
|
+
urllib3==2.5.0
|
|
203
|
+
# via
|
|
204
|
+
# botocore
|
|
205
|
+
# requests
|
|
206
|
+
wcwidth==0.2.13
|
|
207
|
+
# via blessed
|
|
208
|
+
xmod==1.8.1
|
|
209
|
+
# via
|
|
210
|
+
# editor
|
|
211
|
+
# runs
|
|
212
|
+
yarl==1.20.1
|
|
213
|
+
# via aiohttp
|
|
@@ -311,6 +311,21 @@ class ExportAction(Action):
|
|
|
311
311
|
self.params['results'], self.params['count'] = self.get_filtered_results(filters, handler)
|
|
312
312
|
export_items = handler.get_export_item(self.params['results'])
|
|
313
313
|
|
|
314
|
+
# For the 'ground_truth' target, retrieve project information from the first result and add configuration
|
|
315
|
+
if target == 'ground_truth':
|
|
316
|
+
try:
|
|
317
|
+
first_result = next(iter(self.params['results']))
|
|
318
|
+
project_pk = first_result['project']
|
|
319
|
+
project_info = self.client.get_project(project_pk)
|
|
320
|
+
self.params['configuration'] = project_info.get('configuration', {})
|
|
321
|
+
except StopIteration:
|
|
322
|
+
self.params['configuration'] = {}
|
|
323
|
+
# For the 'assignment' and 'task' targets, retrieve the project from the filter as before
|
|
324
|
+
elif target in ['assignment', 'task'] and 'project' in self.params['filter']:
|
|
325
|
+
project_pk = self.params['filter']['project']
|
|
326
|
+
project_info = self.client.get_project(project_pk)
|
|
327
|
+
self.params['configuration'] = project_info.get('configuration', {})
|
|
328
|
+
|
|
314
329
|
storage = self.client.get_storage(self.params['storage'])
|
|
315
330
|
pathlib_cwd = get_pathlib(storage, self.params['path'])
|
|
316
331
|
return self.entrypoint(self.run, export_items, pathlib_cwd, **self.params)
|
|
@@ -36,6 +36,13 @@ class CriticalError(Exception):
|
|
|
36
36
|
|
|
37
37
|
|
|
38
38
|
class ToTaskRun(Run):
|
|
39
|
+
class AnnotateTaskEventLog(BaseModel):
|
|
40
|
+
"""Annotate task event log model."""
|
|
41
|
+
|
|
42
|
+
info: Optional[str] = None
|
|
43
|
+
status: Context
|
|
44
|
+
created: str
|
|
45
|
+
|
|
39
46
|
class AnnotateTaskDataLog(BaseModel):
|
|
40
47
|
"""Log model for annotate task data."""
|
|
41
48
|
|
|
@@ -50,6 +57,142 @@ class ToTaskRun(Run):
|
|
|
50
57
|
failed: int
|
|
51
58
|
success: int
|
|
52
59
|
|
|
60
|
+
LOG_MESSAGES = {
|
|
61
|
+
'INVALID_PROJECT_RESPONSE': {
|
|
62
|
+
'message': 'Invalid project response received.',
|
|
63
|
+
'level': Context.DANGER,
|
|
64
|
+
},
|
|
65
|
+
'NO_DATA_COLLECTION': {
|
|
66
|
+
'message': 'Project does not have a data collection.',
|
|
67
|
+
'level': Context.DANGER,
|
|
68
|
+
},
|
|
69
|
+
'INVALID_DATA_COLLECTION_RESPONSE': {
|
|
70
|
+
'message': 'Invalid data collection response received.',
|
|
71
|
+
'level': Context.DANGER,
|
|
72
|
+
},
|
|
73
|
+
'NO_TASKS_FOUND': {
|
|
74
|
+
'message': 'Tasks to annotate not found.',
|
|
75
|
+
'level': Context.WARNING,
|
|
76
|
+
},
|
|
77
|
+
'TARGET_SPEC_REQUIRED': {
|
|
78
|
+
'message': 'Target specification name is required for file annotation method.',
|
|
79
|
+
'level': Context.DANGER,
|
|
80
|
+
},
|
|
81
|
+
'TARGET_SPEC_NOT_FOUND': {
|
|
82
|
+
'message': 'Target specification name "{}" not found in file specifications',
|
|
83
|
+
'level': Context.DANGER,
|
|
84
|
+
},
|
|
85
|
+
'UNSUPPORTED_METHOD': {
|
|
86
|
+
'message': 'Unsupported annotation method: {}',
|
|
87
|
+
'level': Context.DANGER,
|
|
88
|
+
},
|
|
89
|
+
'ANNOTATING_DATA': {
|
|
90
|
+
'message': 'Annotating data to tasks...',
|
|
91
|
+
'level': None,
|
|
92
|
+
},
|
|
93
|
+
'CRITICAL_ERROR': {
|
|
94
|
+
'message': 'Critical error occured while processing task. Stopping the job.',
|
|
95
|
+
'level': Context.DANGER,
|
|
96
|
+
},
|
|
97
|
+
'TASK_PROCESSING_FAILED': {
|
|
98
|
+
'message': 'Failed to process task {}: {}',
|
|
99
|
+
'level': Context.DANGER,
|
|
100
|
+
},
|
|
101
|
+
'ANNOTATION_COMPLETED': {
|
|
102
|
+
'message': 'Annotation completed. Success: {}, Failed: {}',
|
|
103
|
+
'level': None,
|
|
104
|
+
},
|
|
105
|
+
'INVALID_TASK_RESPONSE': {
|
|
106
|
+
'message': 'Invalid task response received for task {}',
|
|
107
|
+
'level': Context.DANGER,
|
|
108
|
+
},
|
|
109
|
+
'TARGET_SPEC_REQUIRED_FOR_TASK': {
|
|
110
|
+
'message': 'Target specification name is required for file annotation method for task {}',
|
|
111
|
+
'level': Context.DANGER,
|
|
112
|
+
},
|
|
113
|
+
'UNSUPPORTED_METHOD_FOR_TASK': {
|
|
114
|
+
'message': 'Unsupported annotation method: {} for task {}',
|
|
115
|
+
'level': Context.DANGER,
|
|
116
|
+
},
|
|
117
|
+
'PRIMARY_IMAGE_URL_NOT_FOUND': {
|
|
118
|
+
'message': 'Primary image URL not found in task data for task {}',
|
|
119
|
+
'level': Context.DANGER,
|
|
120
|
+
},
|
|
121
|
+
'FILE_SPEC_NOT_FOUND': {
|
|
122
|
+
'message': 'File specification not found for task {}',
|
|
123
|
+
'level': Context.DANGER,
|
|
124
|
+
},
|
|
125
|
+
'FILE_ORIGINAL_NAME_NOT_FOUND': {
|
|
126
|
+
'message': 'File original name not found for task {}',
|
|
127
|
+
'level': Context.DANGER,
|
|
128
|
+
},
|
|
129
|
+
'URL_NOT_FOUND': {
|
|
130
|
+
'message': 'URL not found for task {}',
|
|
131
|
+
'level': Context.DANGER,
|
|
132
|
+
},
|
|
133
|
+
'FETCH_DATA_FAILED': {
|
|
134
|
+
'message': 'Failed to fetch data from URL: {} for task {}',
|
|
135
|
+
'level': Context.DANGER,
|
|
136
|
+
},
|
|
137
|
+
'CONVERT_DATA_FAILED': {
|
|
138
|
+
'message': 'Failed to convert data to task object: {} for task {}',
|
|
139
|
+
'level': Context.DANGER,
|
|
140
|
+
},
|
|
141
|
+
'PREPROCESSOR_ID_REQUIRED': {
|
|
142
|
+
'message': 'Pre-processor ID is required for inference annotation method for task {}',
|
|
143
|
+
'level': Context.DANGER,
|
|
144
|
+
},
|
|
145
|
+
'INFERENCE_PROCESSING_FAILED': {
|
|
146
|
+
'message': 'Failed to process inference for task {}: {}',
|
|
147
|
+
'level': Context.DANGER,
|
|
148
|
+
},
|
|
149
|
+
'ANNOTATING_INFERENCE_DATA': {
|
|
150
|
+
'message': 'Annotating data to tasks using inference...',
|
|
151
|
+
'level': None,
|
|
152
|
+
},
|
|
153
|
+
'INFERENCE_ANNOTATION_COMPLETED': {
|
|
154
|
+
'message': 'Inference annotation completed. Success: {}, Failed: {}',
|
|
155
|
+
'level': None,
|
|
156
|
+
},
|
|
157
|
+
}
|
|
158
|
+
|
|
159
|
+
def log_message_with_code(self, code: str, *args, level: Optional[Context] = None):
|
|
160
|
+
"""Log message using predefined code and optional level override."""
|
|
161
|
+
if code not in self.LOG_MESSAGES:
|
|
162
|
+
self.log_message(f'Unknown log code: {code}')
|
|
163
|
+
return
|
|
164
|
+
|
|
165
|
+
log_config = self.LOG_MESSAGES[code]
|
|
166
|
+
message = log_config['message'].format(*args) if args else log_config['message']
|
|
167
|
+
log_level = level or log_config['level']
|
|
168
|
+
|
|
169
|
+
if log_level:
|
|
170
|
+
self.log_message(message, context=log_level.value)
|
|
171
|
+
else:
|
|
172
|
+
self.log_message(message, context=Context.INFO.value)
|
|
173
|
+
|
|
174
|
+
def log_annotate_task_event(self, code: str, *args, level: Optional[Context] = None):
|
|
175
|
+
"""Log annotate task event using predefined code."""
|
|
176
|
+
if code not in self.LOG_MESSAGES:
|
|
177
|
+
now = datetime.now().isoformat()
|
|
178
|
+
self.log(
|
|
179
|
+
'annotate_task_event',
|
|
180
|
+
self.AnnotateTaskEventLog(
|
|
181
|
+
info=f'Unknown log code: {code}', status=Context.DANGER, created=now
|
|
182
|
+
).model_dump(),
|
|
183
|
+
)
|
|
184
|
+
return
|
|
185
|
+
|
|
186
|
+
log_config = self.LOG_MESSAGES[code]
|
|
187
|
+
message = log_config['message'].format(*args) if args else log_config['message']
|
|
188
|
+
log_level = level or log_config['level'] or Context.INFO
|
|
189
|
+
|
|
190
|
+
now = datetime.now().isoformat()
|
|
191
|
+
self.log(
|
|
192
|
+
'annotate_task_event',
|
|
193
|
+
self.AnnotateTaskEventLog(info=message, status=log_level, created=now).model_dump(),
|
|
194
|
+
)
|
|
195
|
+
|
|
53
196
|
def log_annotate_task_data(self, task_info: Dict[str, Any], status: AnnotateTaskDataStatus):
|
|
54
197
|
"""Log annotate task data."""
|
|
55
198
|
now = datetime.now().isoformat()
|
|
@@ -180,20 +323,20 @@ class ToTaskAction(Action):
|
|
|
180
323
|
project_id = self.params['project']
|
|
181
324
|
project_response = client.get_project(project_id)
|
|
182
325
|
if isinstance(project_response, str):
|
|
183
|
-
self.run.
|
|
326
|
+
self.run.log_message_with_code('INVALID_PROJECT_RESPONSE')
|
|
184
327
|
self.run.end_log()
|
|
185
328
|
return {}
|
|
186
329
|
project: Dict[str, Any] = project_response
|
|
187
330
|
|
|
188
331
|
data_collection_id = project.get('data_collection')
|
|
189
332
|
if not data_collection_id:
|
|
190
|
-
self.run.
|
|
333
|
+
self.run.log_message_with_code('NO_DATA_COLLECTION')
|
|
191
334
|
self.run.end_log()
|
|
192
335
|
return {}
|
|
193
336
|
|
|
194
337
|
data_collection_response = client.get_data_collection(data_collection_id)
|
|
195
338
|
if isinstance(data_collection_response, str):
|
|
196
|
-
self.run.
|
|
339
|
+
self.run.log_message_with_code('INVALID_DATA_COLLECTION_RESPONSE')
|
|
197
340
|
self.run.end_log()
|
|
198
341
|
return {}
|
|
199
342
|
data_collection: Dict[str, Any] = data_collection_response
|
|
@@ -210,7 +353,7 @@ class ToTaskAction(Action):
|
|
|
210
353
|
|
|
211
354
|
# If no tasks found, break the job.
|
|
212
355
|
if not task_ids_count:
|
|
213
|
-
self.run.
|
|
356
|
+
self.run.log_message_with_code('NO_TASKS_FOUND')
|
|
214
357
|
self.run.end_log()
|
|
215
358
|
return {}
|
|
216
359
|
|
|
@@ -220,23 +363,21 @@ class ToTaskAction(Action):
|
|
|
220
363
|
# Check if target specification name exists in file specifications.
|
|
221
364
|
target_specification_name = self.params.get('target_specification_name')
|
|
222
365
|
if not target_specification_name:
|
|
223
|
-
self.run.
|
|
366
|
+
self.run.log_message_with_code('TARGET_SPEC_REQUIRED')
|
|
224
367
|
self.run.end_log()
|
|
225
368
|
return {}
|
|
226
369
|
|
|
227
370
|
file_specifications = data_collection.get('file_specifications', [])
|
|
228
371
|
target_spec_exists = any(spec.get('name') == target_specification_name for spec in file_specifications)
|
|
229
372
|
if not target_spec_exists:
|
|
230
|
-
self.run.
|
|
231
|
-
f'Target specification name "{target_specification_name}" not found in file specifications'
|
|
232
|
-
)
|
|
373
|
+
self.run.log_message_with_code('TARGET_SPEC_NOT_FOUND', target_specification_name)
|
|
233
374
|
self.run.end_log()
|
|
234
375
|
return {}
|
|
235
376
|
self._handle_annotate_data_from_files(task_ids, target_specification_name)
|
|
236
377
|
elif method == AnnotationMethod.INFERENCE:
|
|
237
378
|
self._handle_annotate_data_with_inference(task_ids)
|
|
238
379
|
else:
|
|
239
|
-
self.run.
|
|
380
|
+
self.run.log_message_with_code('UNSUPPORTED_METHOD', method)
|
|
240
381
|
self.run.end_log()
|
|
241
382
|
return {}
|
|
242
383
|
|
|
@@ -270,7 +411,7 @@ class ToTaskAction(Action):
|
|
|
270
411
|
# Initialize metrics and progress
|
|
271
412
|
self._update_metrics(total_tasks, success_count, failed_count)
|
|
272
413
|
self.run.set_progress(0, total_tasks, category='annotate_task_data')
|
|
273
|
-
self.run.
|
|
414
|
+
self.run.log_message_with_code('ANNOTATING_DATA')
|
|
274
415
|
|
|
275
416
|
# Process each task
|
|
276
417
|
for task_id in task_ids:
|
|
@@ -288,13 +429,11 @@ class ToTaskAction(Action):
|
|
|
288
429
|
self.run.set_progress(current_progress, total_tasks, category='annotate_task_data')
|
|
289
430
|
|
|
290
431
|
except CriticalError:
|
|
291
|
-
self.run.
|
|
292
|
-
'Critical error occured while processing task. Stopping the job.', context=Context.DANGER.value
|
|
293
|
-
)
|
|
432
|
+
self.run.log_message_with_code('CRITICAL_ERROR')
|
|
294
433
|
return
|
|
295
434
|
|
|
296
435
|
except Exception as e:
|
|
297
|
-
self.run.
|
|
436
|
+
self.run.log_annotate_task_event('TASK_PROCESSING_FAILED', task_id, str(e))
|
|
298
437
|
self.run.log_annotate_task_data({'task_id': task_id, 'error': str(e)}, AnnotateTaskDataStatus.FAILED)
|
|
299
438
|
failed_count += 1
|
|
300
439
|
current_progress += 1
|
|
@@ -303,7 +442,7 @@ class ToTaskAction(Action):
|
|
|
303
442
|
|
|
304
443
|
# Finalize progress
|
|
305
444
|
self.run.set_progress(total_tasks, total_tasks, category='annotate_task_data')
|
|
306
|
-
self.run.
|
|
445
|
+
self.run.log_message_with_code('ANNOTATION_COMPLETED', success_count, failed_count)
|
|
307
446
|
|
|
308
447
|
def _process_single_task(
|
|
309
448
|
self,
|
|
@@ -335,7 +474,7 @@ class ToTaskAction(Action):
|
|
|
335
474
|
task_response = client.get_task(task_id, params=task_params)
|
|
336
475
|
if isinstance(task_response, str):
|
|
337
476
|
error_msg = 'Invalid task response'
|
|
338
|
-
self.run.
|
|
477
|
+
self.run.log_annotate_task_event('INVALID_TASK_RESPONSE', task_id)
|
|
339
478
|
self.run.log_annotate_task_data({'task_id': task_id, 'error': error_msg}, AnnotateTaskDataStatus.FAILED)
|
|
340
479
|
return {'success': False, 'error': error_msg}
|
|
341
480
|
|
|
@@ -344,7 +483,7 @@ class ToTaskAction(Action):
|
|
|
344
483
|
if method == AnnotationMethod.FILE:
|
|
345
484
|
if not target_specification_name:
|
|
346
485
|
error_msg = 'Target specification name is required for file annotation method'
|
|
347
|
-
self.run.
|
|
486
|
+
self.run.log_message_with_code('TARGET_SPEC_REQUIRED_FOR_TASK', task_id)
|
|
348
487
|
self.run.log_annotate_task_data({'task_id': task_id, 'error': error_msg}, AnnotateTaskDataStatus.FAILED)
|
|
349
488
|
return {'success': False, 'error': error_msg}
|
|
350
489
|
return self._process_single_task_with_file(client, task_id, task, target_specification_name)
|
|
@@ -352,7 +491,7 @@ class ToTaskAction(Action):
|
|
|
352
491
|
return self._process_single_task_with_inference(client, task_id, task)
|
|
353
492
|
else:
|
|
354
493
|
error_msg = f'Unsupported annotation method: {method}'
|
|
355
|
-
self.run.
|
|
494
|
+
self.run.log_annotate_task_event('UNSUPPORTED_METHOD_FOR_TASK', method, task_id)
|
|
356
495
|
self.run.log_annotate_task_data({'task_id': task_id, 'error': error_msg}, AnnotateTaskDataStatus.FAILED)
|
|
357
496
|
return {'success': False, 'error': error_msg}
|
|
358
497
|
|
|
@@ -385,13 +524,13 @@ class ToTaskAction(Action):
|
|
|
385
524
|
primary_file_url, primary_file_original_name = self._extract_primary_file_url(task)
|
|
386
525
|
if not primary_file_url:
|
|
387
526
|
error_msg = 'Primary image URL not found in task data'
|
|
388
|
-
self.run.
|
|
527
|
+
self.run.log_annotate_task_event('PRIMARY_IMAGE_URL_NOT_FOUND', task_id)
|
|
389
528
|
self.run.log_annotate_task_data({'task_id': task_id, 'error': error_msg}, AnnotateTaskDataStatus.FAILED)
|
|
390
529
|
return {'success': False, 'error': error_msg}
|
|
391
530
|
|
|
392
531
|
if not data_file:
|
|
393
532
|
error_msg = 'File specification not found'
|
|
394
|
-
self.run.
|
|
533
|
+
self.run.log_annotate_task_event('FILE_SPEC_NOT_FOUND', task_id)
|
|
395
534
|
self.run.log_annotate_task_data({'task_id': task_id, 'error': error_msg}, AnnotateTaskDataStatus.FAILED)
|
|
396
535
|
return {'success': False, 'error': error_msg}
|
|
397
536
|
|
|
@@ -399,13 +538,13 @@ class ToTaskAction(Action):
|
|
|
399
538
|
data_file_original_name = data_file.get('file_name_original')
|
|
400
539
|
if not data_file_original_name:
|
|
401
540
|
error_msg = 'File original name not found'
|
|
402
|
-
self.run.
|
|
541
|
+
self.run.log_annotate_task_event('FILE_ORIGINAL_NAME_NOT_FOUND', task_id)
|
|
403
542
|
self.run.log_annotate_task_data({'task_id': task_id, 'error': error_msg}, AnnotateTaskDataStatus.FAILED)
|
|
404
543
|
return {'success': False, 'error': error_msg}
|
|
405
544
|
|
|
406
545
|
if not data_file_url:
|
|
407
546
|
error_msg = 'URL not found'
|
|
408
|
-
self.run.
|
|
547
|
+
self.run.log_annotate_task_event('URL_NOT_FOUND', task_id)
|
|
409
548
|
self.run.log_annotate_task_data({'task_id': task_id, 'error': error_msg}, AnnotateTaskDataStatus.FAILED)
|
|
410
549
|
return {'success': False, 'error': error_msg}
|
|
411
550
|
|
|
@@ -418,12 +557,12 @@ class ToTaskAction(Action):
|
|
|
418
557
|
)
|
|
419
558
|
except requests.RequestException as e:
|
|
420
559
|
error_msg = f'Failed to fetch data from URL: {str(e)}'
|
|
421
|
-
self.run.
|
|
560
|
+
self.run.log_annotate_task_event('FETCH_DATA_FAILED', str(e), task_id)
|
|
422
561
|
self.run.log_annotate_task_data({'task_id': task_id, 'error': error_msg}, AnnotateTaskDataStatus.FAILED)
|
|
423
562
|
return {'success': False, 'error': error_msg}
|
|
424
563
|
except Exception as e:
|
|
425
564
|
error_msg = f'Failed to convert data to task object: {str(e)}'
|
|
426
|
-
self.run.
|
|
565
|
+
self.run.log_annotate_task_event('CONVERT_DATA_FAILED', str(e), task_id)
|
|
427
566
|
self.run.log_annotate_task_data({'task_id': task_id, 'error': error_msg}, AnnotateTaskDataStatus.FAILED)
|
|
428
567
|
return {'success': False, 'error': error_msg}
|
|
429
568
|
|
|
@@ -458,7 +597,7 @@ class ToTaskAction(Action):
|
|
|
458
597
|
pre_processor_id = self.params.get('pre_processor')
|
|
459
598
|
if not pre_processor_id:
|
|
460
599
|
error_msg = 'Pre-processor ID is required for inference annotation method'
|
|
461
|
-
self.run.
|
|
600
|
+
self.run.log_message_with_code('PREPROCESSOR_ID_REQUIRED', task_id)
|
|
462
601
|
self.run.log_annotate_task_data({'task_id': task_id, 'error': error_msg}, AnnotateTaskDataStatus.FAILED)
|
|
463
602
|
return {'success': False, 'error': error_msg}
|
|
464
603
|
|
|
@@ -479,7 +618,7 @@ class ToTaskAction(Action):
|
|
|
479
618
|
primary_file_url, _ = self._extract_primary_file_url(task)
|
|
480
619
|
if not primary_file_url:
|
|
481
620
|
error_msg = 'Primary image URL not found in task data'
|
|
482
|
-
self.run.
|
|
621
|
+
self.run.log_annotate_task_event('PRIMARY_IMAGE_URL_NOT_FOUND', task_id)
|
|
483
622
|
self.run.log_annotate_task_data({'task_id': task_id, 'error': error_msg}, AnnotateTaskDataStatus.FAILED)
|
|
484
623
|
return {'success': False, 'error': error_msg}
|
|
485
624
|
|
|
@@ -503,7 +642,7 @@ class ToTaskAction(Action):
|
|
|
503
642
|
|
|
504
643
|
except Exception as e:
|
|
505
644
|
error_msg = f'Failed to process inference for task {task_id}: {str(e)}'
|
|
506
|
-
self.run.
|
|
645
|
+
self.run.log_message_with_code('INFERENCE_PROCESSING_FAILED', task_id, str(e))
|
|
507
646
|
self.run.log_annotate_task_data({'task_id': task_id, 'error': error_msg}, AnnotateTaskDataStatus.FAILED)
|
|
508
647
|
return {'success': False, 'error': error_msg}
|
|
509
648
|
|
|
@@ -722,7 +861,7 @@ class ToTaskAction(Action):
|
|
|
722
861
|
# Initialize metrics and progress
|
|
723
862
|
self._update_metrics(total_tasks, success_count, failed_count)
|
|
724
863
|
self.run.set_progress(0, total_tasks, category='annotate_task_data')
|
|
725
|
-
self.run.
|
|
864
|
+
self.run.log_message_with_code('ANNOTATING_INFERENCE_DATA')
|
|
726
865
|
|
|
727
866
|
# Process each task
|
|
728
867
|
for task_id in task_ids:
|
|
@@ -738,7 +877,7 @@ class ToTaskAction(Action):
|
|
|
738
877
|
self.run.set_progress(current_progress, total_tasks, category='annotate_task_data')
|
|
739
878
|
|
|
740
879
|
except Exception as e:
|
|
741
|
-
self.run.
|
|
880
|
+
self.run.log_annotate_task_event('TASK_PROCESSING_FAILED', task_id, str(e))
|
|
742
881
|
self.run.log_annotate_task_data({'task_id': task_id, 'error': str(e)}, AnnotateTaskDataStatus.FAILED)
|
|
743
882
|
failed_count += 1
|
|
744
883
|
current_progress += 1
|
|
@@ -747,4 +886,4 @@ class ToTaskAction(Action):
|
|
|
747
886
|
|
|
748
887
|
# Finalize progress
|
|
749
888
|
self.run.set_progress(total_tasks, total_tasks, category='annotate_task_data')
|
|
750
|
-
self.run.
|
|
889
|
+
self.run.log_message_with_code('INFERENCE_ANNOTATION_COMPLETED', success_count, failed_count)
|
|
@@ -2,11 +2,43 @@ from enum import Enum
|
|
|
2
2
|
|
|
3
3
|
|
|
4
4
|
class Context(str, Enum):
|
|
5
|
+
"""Context levels for logging and message categorization.
|
|
6
|
+
|
|
7
|
+
This enum defines different context levels that can be used for logging messages,
|
|
8
|
+
UI feedback, and other categorization purposes throughout the application.
|
|
9
|
+
|
|
10
|
+
Usage:
|
|
11
|
+
# In logging methods
|
|
12
|
+
self.log_message("Operation completed", context=Context.SUCCESS.value)
|
|
13
|
+
self.log_message("Warning: deprecated method", context=Context.WARNING.value)
|
|
14
|
+
|
|
15
|
+
# In LOG_MESSAGES dictionary
|
|
16
|
+
LOG_MESSAGES = {
|
|
17
|
+
'SUCCESS_CODE': {'message': 'Success!', 'level': Context.SUCCESS},
|
|
18
|
+
'ERROR_CODE': {'message': 'Error occurred', 'level': Context.DANGER},
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
# In UI components for styling/theming
|
|
22
|
+
if context == Context.DANGER:
|
|
23
|
+
render_error_style()
|
|
24
|
+
elif context == Context.SUCCESS:
|
|
25
|
+
render_success_style()
|
|
26
|
+
|
|
27
|
+
Attributes:
|
|
28
|
+
INFO: General informational messages (neutral)
|
|
29
|
+
SUCCESS: Success messages and positive outcomes
|
|
30
|
+
WARNING: Warning messages for non-critical issues
|
|
31
|
+
DANGER: Error messages and critical failures
|
|
32
|
+
ERROR: Legacy error context (use DANGER for new implementations)
|
|
33
|
+
DEBUG: Debug-level messages for development
|
|
34
|
+
"""
|
|
35
|
+
|
|
5
36
|
INFO = 'info'
|
|
6
37
|
SUCCESS = 'success'
|
|
7
38
|
WARNING = 'warning'
|
|
8
39
|
DANGER = 'danger'
|
|
9
40
|
ERROR = 'error'
|
|
41
|
+
DEBUG = 'debug'
|
|
10
42
|
|
|
11
43
|
|
|
12
44
|
class SupportedTools(Enum):
|
|
File without changes
|