mammoth-cli 2.0.85__tar.gz → 2.0.86__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.
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/PKG-INFO +2 -2
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/__init__.py +1 -1
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/app.py +5 -2
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/commands/view.py +2 -1
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/errors/envelope.py +121 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/runtime/dryrun.py +8 -1
- mammoth_cli-2.0.86/mammoth_cli/runtime/dryrun_targets.py +575 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/runtime/strict.py +2 -1
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/pyproject.toml +2 -2
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/.gitignore +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/LICENSE +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/README.md +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/__main__.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/bundled_skill/mammoth-cli/SKILL.md +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/bundled_skill/mammoth-cli/references/about-mammoth.md +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/bundled_skill/mammoth-cli/references/auth.md +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/bundled_skill/mammoth-cli/references/capabilities-misc.md +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/bundled_skill/mammoth-cli/references/capabilities.md +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/bundled_skill/mammoth-cli/references/command-index.md +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/activity.md +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/addon.md +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/agent.md +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/ai.md +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/annotation.md +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/auth.md +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/automation.md +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/batch.md +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/billing.md +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/browse.md +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/calc.md +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/capability.md +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/client-app.md +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/completion.md +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/config.md +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/connector.md +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/context.md +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/dashboard-qa.md +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/dashboard.md +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/data-app.md +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/dataset.md +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/doctor.md +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/external-key.md +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/file.md +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/folder.md +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/job.md +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/log.md +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/notification.md +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/parameter.md +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/project.md +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/report.md +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/schedule.md +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/schema.md +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/skill.md +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/snippet.md +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/support.md +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/template.md +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/trash.md +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/upgrade.md +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/user.md +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/version.md +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/view-transform.md +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/view.md +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/webhook.md +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/workflow.md +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/workspace.md +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/bundled_skill/mammoth-cli/references/handoff.md +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/bundled_skill/mammoth-cli/references/input.md +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/bundled_skill/mammoth-cli/references/jobs-drafts.md +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/bundled_skill/mammoth-cli/references/machine-output.md +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/bundled_skill/mammoth-cli/references/operations.md +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/bundled_skill/mammoth-cli/references/recipes/auth-scope.md +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/bundled_skill/mammoth-cli/references/recipes/cleanup.md +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/bundled_skill/mammoth-cli/references/recipes/dashboards.md +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/bundled_skill/mammoth-cli/references/recipes/end-to-end.md +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/bundled_skill/mammoth-cli/references/recipes/exports.md +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/bundled_skill/mammoth-cli/references/recipes/index.md +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/bundled_skill/mammoth-cli/references/recipes/need-action.md +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/bundled_skill/mammoth-cli/references/recipes/resources.md +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/bundled_skill/mammoth-cli/references/recipes/scheduling.md +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/bundled_skill/mammoth-cli/references/recipes/transforms.md +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/bundled_skill/mammoth-cli/references/recipes/typed-etl-discovery.md +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/bundled_skill/mammoth-cli/references/recovery.md +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/bundled_skill/mammoth-cli/references/report-checklist.md +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/bundled_skill/mammoth-cli/references/retention.md +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/bundled_skill/mammoth-cli/references/safety.md +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/bundled_skill/mammoth-cli/references/task-start.md +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/commands/__init__.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/commands/activity.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/commands/addon.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/commands/agent.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/commands/ai.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/commands/annotation.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/commands/auth.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/commands/automation.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/commands/batch.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/commands/billing.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/commands/browse.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/commands/calc.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/commands/capability.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/commands/client_app.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/commands/completion.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/commands/config.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/commands/connector.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/commands/context.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/commands/dashboard.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/commands/data_app.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/commands/dataset.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/commands/doctor.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/commands/external_key.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/commands/file.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/commands/folder.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/commands/job.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/commands/notification.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/commands/parameter.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/commands/project.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/commands/registry.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/commands/report.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/commands/schedule.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/commands/schema.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/commands/skill.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/commands/snippet.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/commands/support.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/commands/template.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/commands/trash.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/commands/upgrade.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/commands/user.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/commands/view_ops.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/commands/webhook.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/commands/workflow.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/commands/workspace.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/context/__init__.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/context/credentials.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/context/endpoint.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/context/profiles.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/context/resolver.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/contracts/__init__.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/contracts/auth.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/embed.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/errors/__init__.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/manifest/__init__.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/manifest/loader.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/messages/__init__.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/output/__init__.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/output/envelope.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/output/normalize.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/output/policy.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/output/progress.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/output/render.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/py.typed +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/runtime/__init__.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/runtime/confirm.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/runtime/dataset_health.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/runtime/embedded.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/runtime/executor.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/runtime/input_loader.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/runtime/invocation.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/runtime/new_data.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/runtime/options.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/runtime/parents.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/runtime/runlog.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/runtime/session.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/runtime/state.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/runtime/updates.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/runtime/validate.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/runtime/verify.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/services/__init__.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/services/argspec.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/services/coerce.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/services/command_contract.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/services/conditions.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/services/dashboard_pages.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/services/dashboard_review.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/services/data_quality.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/services/dispatch.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/services/factory.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/services/input_fields.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/services/mapping.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/services/openapi_types.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/services/positionals.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/services/protocol.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/services/sdk_service.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/services/testing.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/services/type_system.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/skills/__init__.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/skills/installer.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/skills/steering.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/mammoth_cli/testing.py +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/spec/manifests/commands/activity.yaml +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/spec/manifests/commands/addon.yaml +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/spec/manifests/commands/agent.yaml +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/spec/manifests/commands/ai.yaml +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/spec/manifests/commands/annotation.yaml +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/spec/manifests/commands/auth.yaml +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/spec/manifests/commands/automation.yaml +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/spec/manifests/commands/batch.yaml +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/spec/manifests/commands/billing.yaml +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/spec/manifests/commands/browse.yaml +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/spec/manifests/commands/calc.yaml +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/spec/manifests/commands/capability.yaml +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/spec/manifests/commands/client-app.yaml +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/spec/manifests/commands/completion.yaml +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/spec/manifests/commands/config.yaml +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/spec/manifests/commands/connector.yaml +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/spec/manifests/commands/context.yaml +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/spec/manifests/commands/dashboard.yaml +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/spec/manifests/commands/data-app.yaml +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/spec/manifests/commands/dataset.yaml +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/spec/manifests/commands/doctor.yaml +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/spec/manifests/commands/external-key.yaml +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/spec/manifests/commands/file.yaml +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/spec/manifests/commands/folder.yaml +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/spec/manifests/commands/job.yaml +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/spec/manifests/commands/log.yaml +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/spec/manifests/commands/notification.yaml +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/spec/manifests/commands/parameter.yaml +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/spec/manifests/commands/project.yaml +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/spec/manifests/commands/report.yaml +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/spec/manifests/commands/schedule.yaml +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/spec/manifests/commands/schema.yaml +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/spec/manifests/commands/skill.yaml +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/spec/manifests/commands/snippet.yaml +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/spec/manifests/commands/support.yaml +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/spec/manifests/commands/template.yaml +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/spec/manifests/commands/trash.yaml +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/spec/manifests/commands/upgrade.yaml +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/spec/manifests/commands/user.yaml +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/spec/manifests/commands/version.yaml +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/spec/manifests/commands/view.yaml +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/spec/manifests/commands/webhook.yaml +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/spec/manifests/commands/workflow.yaml +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/spec/manifests/commands/workspace.yaml +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/spec/manifests/openapi-operations.yaml +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/spec/manifests/schema-v1.json +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/spec/manifests/sdk-catalog.source.yaml +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/spec/manifests/sdk-methods.yaml +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/spec/openapi/metadata.json +0 -0
- {mammoth_cli-2.0.85 → mammoth_cli-2.0.86}/spec/openapi/openapi.json +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: mammoth-cli
|
|
3
|
-
Version: 2.0.
|
|
3
|
+
Version: 2.0.86
|
|
4
4
|
Summary: Command-line interface for the Mammoth Analytics platform
|
|
5
5
|
Project-URL: homepage, https://mammoth.io
|
|
6
6
|
Project-URL: repository, https://github.com/EdgeMetric/mammothsdk
|
|
@@ -17,7 +17,7 @@ Classifier: Topic :: Software Development :: Libraries :: Python Modules
|
|
|
17
17
|
Requires-Python: <3.15,>=3.12
|
|
18
18
|
Requires-Dist: jsonschema>=4.20
|
|
19
19
|
Requires-Dist: keyring<26,>=25.7
|
|
20
|
-
Requires-Dist: mammoth-io<0.8,>=0.7.
|
|
20
|
+
Requires-Dist: mammoth-io<0.8,>=0.7.40
|
|
21
21
|
Requires-Dist: platformdirs<5,>=4.10
|
|
22
22
|
Requires-Dist: pydantic<3,>=2.12.5
|
|
23
23
|
Requires-Dist: pyyaml<7,>=6
|
|
@@ -885,12 +885,15 @@ def _dry_run(handler: Handler, invocation: Invocation) -> tuple[Any, dict[str, A
|
|
|
885
885
|
gated SDK call at all (a pure read path); its result is returned as is.
|
|
886
886
|
"""
|
|
887
887
|
from mammoth_cli.runtime.dryrun import DryRunStop
|
|
888
|
-
from mammoth_cli.runtime.
|
|
888
|
+
from mammoth_cli.runtime.dryrun_targets import resolve_targets
|
|
889
|
+
from mammoth_cli.runtime.session import open_service, resolved_project
|
|
889
890
|
|
|
890
891
|
try:
|
|
891
892
|
return handler(invocation)
|
|
892
893
|
except DryRunStop as stop:
|
|
893
|
-
|
|
894
|
+
with open_service(invocation) as (service, _auth):
|
|
895
|
+
targets = resolve_targets(service, invocation.command_id, stop.record["would_call"])
|
|
896
|
+
return {**stop.record, "targets": targets}, {
|
|
894
897
|
"profile": invocation.profile,
|
|
895
898
|
"project_id": resolved_project(invocation),
|
|
896
899
|
}
|
|
@@ -2591,7 +2591,8 @@ def view_export_specialized(invocation: Invocation) -> HandlerResult:
|
|
|
2591
2591
|
code="unknown_input_field",
|
|
2592
2592
|
message=(
|
|
2593
2593
|
f"Unknown input field(s) for '{invocation.command_id.replace('.', ' ')}': "
|
|
2594
|
-
f"{', '.join(unknown)}."
|
|
2594
|
+
f"{', '.join(unknown)}. "
|
|
2595
|
+
f"Accepted fields: {', '.join(sorted(allowed - {_DATASET_ID_FIELD}))}."
|
|
2595
2596
|
),
|
|
2596
2597
|
exit_status=EXIT_USAGE,
|
|
2597
2598
|
hint=f"Accepted fields: {', '.join(sorted(allowed - {_DATASET_ID_FIELD}))}.",
|
|
@@ -52,6 +52,126 @@ CODE_JOB_FAILED = "job_failed"
|
|
|
52
52
|
CODE_INTERRUPTED = "interrupted"
|
|
53
53
|
CODE_UNSUPPORTED_CONTRACT = "unsupported_contract"
|
|
54
54
|
|
|
55
|
+
# User-safe, one-line summaries shown to the customer instead of the model-facing
|
|
56
|
+
# ``message``/``hint``. Plain language only: no command names, ids, field names
|
|
57
|
+
# or jargon. Exactly one entry per error code the CLI can raise;
|
|
58
|
+
# ``tests/unit/test_error_summaries.py`` fails if a raised code has none.
|
|
59
|
+
_S_BAD_REQUEST = "The assistant's request wasn't valid, so it is trying a different way."
|
|
60
|
+
_S_BAD_INPUT = "Some of the information provided couldn't be used."
|
|
61
|
+
_S_SIGN_IN = "The assistant isn't signed in to Mammoth."
|
|
62
|
+
_S_INTERNAL = "The assistant hit an internal problem with this step."
|
|
63
|
+
_S_NOT_FOUND = "Something the assistant looked for couldn't be found."
|
|
64
|
+
_S_MISSING_INFO = "The assistant's request was missing some information."
|
|
65
|
+
_S_SETUP = "A setting needed for this step isn't set up correctly."
|
|
66
|
+
_S_UNAVAILABLE = "This step isn't available right now."
|
|
67
|
+
|
|
68
|
+
ERROR_SUMMARIES: dict[str, str] = {
|
|
69
|
+
"aborted": "This step was stopped before it finished.",
|
|
70
|
+
"ambiguous_resource_identity": (
|
|
71
|
+
"More than one item matched, so the assistant needs to be more specific."
|
|
72
|
+
),
|
|
73
|
+
"api_error": "Mammoth couldn't complete this step.",
|
|
74
|
+
"append_schema_mismatch": "The new data doesn't line up with the existing columns.",
|
|
75
|
+
"append_schema_unreadable": "The columns of the existing data couldn't be read.",
|
|
76
|
+
"authentication_failed": "Mammoth didn't accept the sign-in for this step.",
|
|
77
|
+
"authorization_required": "You don't have permission to do this.",
|
|
78
|
+
"capability_not_found": "The assistant tried something Mammoth doesn't support.",
|
|
79
|
+
"confirmation_declined": "This step was not confirmed, so nothing was changed.",
|
|
80
|
+
"confirmation_required": "This step needs your confirmation before it can go ahead.",
|
|
81
|
+
"confirmation_target_mismatch": (
|
|
82
|
+
"The confirmation was for a different item, so nothing was changed."
|
|
83
|
+
),
|
|
84
|
+
"conflict": "This conflicts with the current state of your data, so nothing was changed.",
|
|
85
|
+
"dry_run_targets_unresolvable": (
|
|
86
|
+
"The assistant couldn't tell exactly which items this would change, so nothing was changed."
|
|
87
|
+
),
|
|
88
|
+
"download_failed": "A download didn't complete.",
|
|
89
|
+
"duplicate_input_key": _S_BAD_INPUT,
|
|
90
|
+
"empty_search_query": "The search was empty.",
|
|
91
|
+
"export_already_exists": "An export with that name already exists.",
|
|
92
|
+
"incomplete_environment_auth": _S_SIGN_IN,
|
|
93
|
+
"input_file_not_found": _S_NOT_FOUND,
|
|
94
|
+
"input_format_required": _S_BAD_INPUT,
|
|
95
|
+
"input_not_found": _S_NOT_FOUND,
|
|
96
|
+
"input_too_deep": _S_BAD_INPUT,
|
|
97
|
+
"input_too_large": "The information provided was too large.",
|
|
98
|
+
"input_unreadable": _S_BAD_INPUT,
|
|
99
|
+
"insecure_credential_file": _S_SETUP,
|
|
100
|
+
"insecure_input_file": _S_BAD_INPUT,
|
|
101
|
+
"internal_column_name": "That column is internal to Mammoth and can't be used.",
|
|
102
|
+
"internal_error": _S_INTERNAL,
|
|
103
|
+
"interrupted": "This step was interrupted before it finished.",
|
|
104
|
+
"invalid_argument": _S_BAD_REQUEST,
|
|
105
|
+
"invalid_argument_combination": _S_BAD_REQUEST,
|
|
106
|
+
"invalid_arguments": _S_BAD_REQUEST,
|
|
107
|
+
"invalid_condition": "A filter condition wasn't valid.",
|
|
108
|
+
"invalid_condition_value": "A filter condition used a value that isn't valid.",
|
|
109
|
+
"invalid_config_value": _S_SETUP,
|
|
110
|
+
"invalid_credentials": "The sign-in details weren't accepted.",
|
|
111
|
+
"invalid_input_document": _S_BAD_INPUT,
|
|
112
|
+
"invalid_input_encoding": _S_BAD_INPUT,
|
|
113
|
+
"invalid_input_field_type": _S_BAD_INPUT,
|
|
114
|
+
"invalid_input_format": _S_BAD_INPUT,
|
|
115
|
+
"invalid_login_document": "The sign-in details weren't valid.",
|
|
116
|
+
"invalid_option_value": _S_BAD_REQUEST,
|
|
117
|
+
"invalid_output_mode": _S_BAD_REQUEST,
|
|
118
|
+
"invalid_profile_name": _S_SETUP,
|
|
119
|
+
"invalid_project_id": "The project couldn't be identified.",
|
|
120
|
+
"invalid_resource_context": _S_BAD_REQUEST,
|
|
121
|
+
"invalid_server_prefix": _S_SETUP,
|
|
122
|
+
"invalid_storage_mode": _S_SETUP,
|
|
123
|
+
"invalid_workspace_id": "The workspace couldn't be identified.",
|
|
124
|
+
"job_failed": "A background task didn't finish successfully.",
|
|
125
|
+
"keyring_unavailable": _S_SETUP,
|
|
126
|
+
"keyring_unresponsive": _S_SETUP,
|
|
127
|
+
"login_input_required": _S_SIGN_IN,
|
|
128
|
+
"missing_argument": _S_MISSING_INFO,
|
|
129
|
+
"missing_field": _S_MISSING_INFO,
|
|
130
|
+
"no_output": "This step didn't return anything.",
|
|
131
|
+
"nonfinite_input_number": _S_BAD_INPUT,
|
|
132
|
+
"not_authenticated": _S_SIGN_IN,
|
|
133
|
+
"not_implemented": _S_UNAVAILABLE,
|
|
134
|
+
"outcome_unknown": "It isn't clear whether this step went through. Check before trying again.",
|
|
135
|
+
"pipeline_changed": "The pipeline was changed by someone else while this step ran.",
|
|
136
|
+
"pipeline_reference_error": "A step in the pipeline refers to something that no longer exists.",
|
|
137
|
+
"profile_not_found": _S_SETUP,
|
|
138
|
+
"profile_write_failed": _S_SETUP,
|
|
139
|
+
"project_required": "No project has been chosen for this step.",
|
|
140
|
+
"pypi_response_invalid": "An update check didn't return a usable answer.",
|
|
141
|
+
"pypi_unreachable": "An update check couldn't connect.",
|
|
142
|
+
"resource_identity_required": "The assistant needs to say which item it means.",
|
|
143
|
+
"resource_not_found": _S_NOT_FOUND,
|
|
144
|
+
"retryable_error": "Mammoth was temporarily unavailable. Trying again may work.",
|
|
145
|
+
"schema_not_found": _S_NOT_FOUND,
|
|
146
|
+
"sdk_symbol_unresolved": _S_INTERNAL,
|
|
147
|
+
"skill_conflict": _S_SETUP,
|
|
148
|
+
"task_runtime_error": "A background task hit an error while running.",
|
|
149
|
+
"timeout": "This step took too long. It may still be running.",
|
|
150
|
+
"too_many_goals": _S_BAD_REQUEST,
|
|
151
|
+
"unexpected_argument": _S_BAD_REQUEST,
|
|
152
|
+
"unknown_agent": _S_SETUP,
|
|
153
|
+
"unknown_column": "A column the assistant referred to doesn't exist.",
|
|
154
|
+
"unknown_config_key": _S_SETUP,
|
|
155
|
+
"unknown_input_field": _S_BAD_REQUEST,
|
|
156
|
+
"unknown_option": _S_BAD_REQUEST,
|
|
157
|
+
"unknown_scope": _S_SETUP,
|
|
158
|
+
"unsupported_contract": _S_UNAVAILABLE,
|
|
159
|
+
"unsupported_profile_base_url": _S_SETUP,
|
|
160
|
+
"unsupported_shell": _S_UNAVAILABLE,
|
|
161
|
+
"upgrade_failed": "The update didn't complete.",
|
|
162
|
+
"usage_error": _S_BAD_REQUEST,
|
|
163
|
+
"view_in_draft": "This view is still a draft and can't be used yet.",
|
|
164
|
+
}
|
|
165
|
+
|
|
166
|
+
#: Shown for a code with no entry (a runtime backstop only; the exhaustiveness
|
|
167
|
+
#: test keeps every raised code out of this path).
|
|
168
|
+
DEFAULT_ERROR_SUMMARY = "Something went wrong with this step."
|
|
169
|
+
|
|
170
|
+
|
|
171
|
+
def user_summary(code: str) -> str:
|
|
172
|
+
"""The user-safe one-line summary for an error code."""
|
|
173
|
+
return ERROR_SUMMARIES.get(code, DEFAULT_ERROR_SUMMARY)
|
|
174
|
+
|
|
55
175
|
|
|
56
176
|
@dataclass
|
|
57
177
|
class CliError(Exception):
|
|
@@ -77,6 +197,7 @@ class CliError(Exception):
|
|
|
77
197
|
def to_envelope(self) -> dict[str, Any]:
|
|
78
198
|
error: dict[str, Any] = {
|
|
79
199
|
"code": self.code,
|
|
200
|
+
"summary": user_summary(self.code),
|
|
80
201
|
"message": self.message,
|
|
81
202
|
"hint": self.hint,
|
|
82
203
|
"details": self.details,
|
|
@@ -30,6 +30,11 @@ from mammoth_cli.manifest.loader import command_by_id, load_commands
|
|
|
30
30
|
Gate = Callable[..., None]
|
|
31
31
|
|
|
32
32
|
NOTE_OWN = "No request was sent for this operation; the reads needed to resolve it did run."
|
|
33
|
+
DATAVIEW_GET = "mammoth.api.dataviews.DataviewsAPI.get"
|
|
34
|
+
#: The manifest ``mutation_class`` that marks a command as irreversible: the
|
|
35
|
+
#: only class whose commands the manifest describes as permanent (no undo).
|
|
36
|
+
IRREVERSIBLE_CLASS = "destructive"
|
|
37
|
+
|
|
33
38
|
NOTE_UNDECLARED = (
|
|
34
39
|
"Stopped before an SDK call the command's manifest does not declare; "
|
|
35
40
|
"nothing was sent for it."
|
|
@@ -92,7 +97,8 @@ def make_gate(command_id: str) -> Gate:
|
|
|
92
97
|
# A CLI-composed command (project ensure, ...) is backed by a CLI function
|
|
93
98
|
# and reaches the SDK through whichever writes it needs; those are its own.
|
|
94
99
|
composed = own_symbol.startswith("mammoth_cli.")
|
|
95
|
-
|
|
100
|
+
# The target-name read is a read whichever command asked for it.
|
|
101
|
+
reads = _read_symbols() | {DATAVIEW_GET}
|
|
96
102
|
view_reads = _read_view_methods()
|
|
97
103
|
|
|
98
104
|
def stop(symbol: str, arguments: dict[str, Any], *, own: bool, **scope: Any) -> None:
|
|
@@ -101,6 +107,7 @@ def make_gate(command_id: str) -> Gate:
|
|
|
101
107
|
"dry_run": True,
|
|
102
108
|
"command": command_id.replace(".", " "),
|
|
103
109
|
"mutation_class": mutation_class,
|
|
110
|
+
"irreversible": mutation_class == IRREVERSIBLE_CLASS,
|
|
104
111
|
"would_call": {
|
|
105
112
|
"sdk_symbol": symbol,
|
|
106
113
|
**{key: value for key, value in scope.items() if value is not None},
|